FrameworkContentElement.DataContext Eigenschaft

Definition

Dient zum Abrufen oder Festlegen des Datenkontexts für ein Element fest, wenn das Element an Datenbindungen beteiligt ist.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

Eigenschaftswert

Das Objekt, das als Datenkontext verwendet werden soll.The object to use as data context.

Attribute

Beispiele

Im folgenden Beispiel wird eine Bindung für ein Paragraph Element festgelegt, indem ein neues benutzerdefiniertes Datenobjekt erstellt, das Objekt als DataContextfestgelegt und der Bindungs Pfad auf eine Eigenschaft innerhalb der Eigenschaft festgelegt wird.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")

Hinweise

Der Datenkontext ist ein Konzept, mit dem Elemente Informationen von ihren übergeordneten Elementen über die Bindungs Quelle, die für die Bindung verwendet wird, sowie andere Merkmale der Bindung, wie z. b. den Pfad, erben können.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.

Der Datenkontext kann direkt auf ein Common Language Runtime (CLR)common language runtime (CLR) Objekt festgelegt werden, wobei die Bindungen die Eigenschaften dieses Objekts auswerten.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. Alternativ können Sie den Datenkontext auf ein DataSourceProvider-Objekt festlegen.Alternatively, you can set the data context to a DataSourceProvider object.

Diese Abhängigkeits Eigenschaft erbt Eigenschaftswerte.This dependency property inherits property values. Wenn untergeordnete Elemente ohne anderen Wert für DataContext über lokale Werte oder Stile festgelegt sind, legt das Eigenschaften System den Wert auf den DataContext Wert des nächsten übergeordneten Elements fest, dem dieser Wert zugewiesen ist.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.

Alternativ können Sie eine der folgenden Eigenschaften der Binding-Klasse verwenden, um die Bindungs Quelle explizit anzugeben: ElementName, Sourceoder RelativeSource.Alternatively, you can use one of the following properties of the Binding class to specify the binding source explicitly: ElementName, Source, or RelativeSource. Weitere Informationen finden Sie unter Vorgehensweise: Geben Sie die Bindungs Quellean.For more information, see How to: Specify the Binding Source.

In XAMLXAMLwird DataContext am häufigsten als Binding Deklaration festgelegt.In XAMLXAML, DataContext is most commonly set to as a Binding declaration. Sie können entweder die Syntax des Eigenschafts Elements oder die Attribut Syntax verwenden.You can use either property element syntax or attribute syntax. Die Attribut Syntax wird im Beispiel auf dieser Seite angezeigt.Attribute syntax is shown in the example on this page. Sie können auch DataContext im Code festlegen.You can also set DataContext in code.

Verwendung von XAML-EigenschaftenelementenXAML Property Element Usage

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

Verwendung von XAML-AttributenXAML Attribute Usage

<object DataContext="bindingUsage"/>  

- oder --or-

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

XAML-WerteXAML Values

datacontextobjectdataContextObject
Ein direkt eingebettetes Objekt, das als Datenkontext für alle Bindungen innerhalb des übergeordneten Elements fungiert.A directly embedded object that serves as data context for any bindings within the parent element. In der Regel ist dieses Objekt eine Binding oder eine andere BindingBase Unterklasse.Typically, this object is a Binding or another BindingBase subclass. Alternativ können Rohdaten eines beliebigen CLRCLR Objekttyps, der für die Bindung bestimmt ist, hier platziert werden, wobei die eigentlichen Bindungen später definiert werden.Alternatively, raw data of any CLRCLR object type intended for binding may be placed here, with the actual bindings defined later.

bindingusagebindingUsage
Eine Bindungs Verwendung, die zu einem geeigneten Datenkontext ausgewertet wird.A binding usage that evaluates to an appropriate data context. Weitere Informationen finden Sie unter Binding als Markuperweiterung.For details, see Binding Markup Extension.

resourceextensionresourceExtension
Eines der folgenden: StaticResourceoder DynamicResource.One of the following: StaticResource, or DynamicResource. Diese Verwendung wird verwendet, wenn auf Rohdaten verwiesen wird, die als Objekt in Ressourcen definiert sind.This usage is used when referring to raw data defined as an object in resources. Siehe XAML-Ressourcen.See XAML Resources.

contextresourcekeycontextResourceKey
Der Schlüssel Bezeichner für das Objekt, das in einem ResourceDictionaryangefordert wird.The key identifier for the object being requested from within a ResourceDictionary.

Informationen zur AbhängigkeitseigenschaftDependency Property Information

BezeichnerfeldIdentifier field DataContextProperty
Metadateneigenschaften auf true festgelegtMetadata properties set to true Inherits

Gilt für: