FrameworkContentElement.DataContext FrameworkContentElement.DataContext FrameworkContentElement.DataContext FrameworkContentElement.DataContext Property

Definizione

Ottiene o imposta il contesto dei dati per un elemento quando partecipa al data binding.Gets or sets the data context for an element when it participates in data binding.

public:
 property System::Object ^ DataContext { System::Object ^ get(); void set(System::Object ^ value); };
[System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)]
public object DataContext { get; set; }
member this.DataContext : obj with get, set
Public Property DataContext As Object

Valore della proprietà

Oggetto da usare come contesto dei dati.The object to use as data context.

Esempi

Nell'esempio seguente viene impostata un'associazione per Paragraph un elemento, creando un nuovo oggetto dati personalizzato, definendo tale oggetto come DataContexte impostando il percorso di associazione su una proprietà al suo interno.The following example sets a binding on a Paragraph element, by creating a new custom data object, establishing that object as DataContext, and setting the binding path to a property within it.

MyData myDataObject = new MyData();
myflowdocument.DataContext = myDataObject;
introParagraph.SetBinding(Paragraph.TagProperty, "CustomData");
Dim myDataObject As New MyData()
myflowdocument.DataContext = myDataObject
introParagraph.SetBinding(Paragraph.TagProperty, "CustomData")

Commenti

Il contesto dei dati è un concetto che consente agli elementi di ereditare informazioni dagli elementi padre sull'origine di associazione utilizzata per l'associazione, nonché altre caratteristiche dell'associazione, ad esempio il percorso.Data context is a concept that allows elements to inherit information from their parent elements about the binding source that is used for binding, as well as other characteristics of the binding such as the path.

Il contesto dei dati può essere impostato direttamente Common Language Runtime (CLR)common language runtime (CLR) su un oggetto, con le associazioni che valutano le proprietà di tale oggetto.Data context can be set directly to a Common Language Runtime (CLR)common language runtime (CLR) object, with the bindings evaluating to properties of that object. In alternativa, è possibile impostare il contesto dei dati su DataSourceProvider un oggetto.Alternatively, you can set the data context to a DataSourceProvider object.

Questa proprietà di dipendenza eredita i valori della proprietà.This dependency property inherits property values. Se sono presenti elementi figlio senza altro valore per DataContext stabilito tramite valori o stili locali, il sistema di proprietà imposterà il valore in modo che sia il DataContext valore dell'elemento padre più vicino a cui è assegnato questo valore.If there are child elements with no other value for DataContext established through local values or styles, the property system will set the value to be the DataContext value of the nearest parent element with this value assigned.

In alternativa, è possibile utilizzare una delle seguenti proprietà della Binding classe per specificare in modo esplicito l'origine del binding: Source ElementName, o RelativeSource.Alternatively, you can use one of the following properties of the Binding class to specify the binding source explicitly: ElementName, Source, or RelativeSource. Per altre informazioni, vedere Procedura: Specificare l'originedel binding.For more information, see How to: Specify the Binding Source.

In XAMLXAML, DataContext vieneBinding generalmente impostata su come dichiarazione.In XAMLXAML, DataContext is most commonly set to as a Binding declaration. È possibile utilizzare la sintassi dell'elemento proprietà o la sintassi dell'attributo.You can use either property element syntax or attribute syntax. La sintassi dell'attributo è illustrata nell'esempio in questa pagina.Attribute syntax is shown in the example on this page. È anche possibile impostare DataContext nel codice.You can also set DataContext in code.

Utilizzo della sintassi XAML per elementi proprietàXAML Property Element Usage

<object>  
  <object.DataContext>  
    <dataContextObject />  
  </object.DataContext>  
</object>  

Uso della sintassi XAML per gli attributiXAML Attribute Usage

<object DataContext="bindingUsage"/>  

In alternativa-or-

<object DataContext="{resourceExtension contextResourceKey}"/>  

Valori XAMLXAML Values

dataContextObjectdataContextObject
Oggetto incorporato direttamente che funge da contesto dati per qualsiasi binding all'interno dell'elemento padre.A directly embedded object that serves as data context for any bindings within the parent element. In genere, questo oggetto è Binding o un' BindingBase altra sottoclasse.Typically, this object is a Binding or another BindingBase subclass. In alternativa, è possibile inserire i CLRCLR dati non elaborati di un tipo di oggetto destinato all'associazione, con le associazioni effettive definite in un secondo momento.Alternatively, raw data of any CLRCLR object type intended for binding may be placed here, with the actual bindings defined later.

bindingUsagebindingUsage
Utilizzo dell'associazione che restituisce un contesto dati appropriato.A binding usage that evaluates to an appropriate data context. Per informazioni dettagliate, vedere Estensione di markup Binding.For details, see Binding Markup Extension.

resourceExtensionresourceExtension
Uno dei seguenti: StaticResource, o. DynamicResourceOne of the following: StaticResource, or DynamicResource. Questo utilizzo viene utilizzato quando si fa riferimento a dati non elaborati definiti come oggetto nelle risorse.This usage is used when referring to raw data defined as an object in resources. Vedere risorse XAML.See XAML Resources.

contextResourceKeycontextResourceKey
Identificatore di chiave per l'oggetto richiesto dall'interno di un ResourceDictionaryoggetto.The key identifier for the object being requested from within a ResourceDictionary.

Informazioni proprietà di dipendenzaDependency Property Information

Campo identificatoreIdentifier field DataContextProperty
Proprietà dei metadati impostate sutrueMetadata properties set to true Inherits

Si applica a