FrameworkContentElement.DataContext Eigenschaft

Definition

Dient zum Abrufen oder Festlegen des Datenkontexts für ein Element fest, wenn das Element an Datenbindungen beteiligt ist.

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; }
[<System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)>]
member this.DataContext : obj with get, set
Public Property DataContext As Object

Eigenschaftswert

Object

Das Objekt, das als Datenkontext verwendet werden soll.

Attribute

Beispiele

Im folgenden Beispiel wird eine Bindung für ein Paragraph Element festgelegt, indem ein neues benutzerdefiniertes Datenobjekt erstellt wird, das objekt als DataContextfestgelegt wird und der Bindungspfad auf eine Eigenschaft festgelegt wird.

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 Bindungsquelle erben können, die für die Bindung verwendet wird, sowie andere Merkmale der Bindung, z. B. der Pfad.

Der Datenkontext kann direkt auf ein CLR-Objekt (Common Language Runtime) festgelegt werden, wobei die Bindungen für Eigenschaften dieses Objekts ausgewertet werden. Alternativ können Sie den Datenkontext auf ein DataSourceProvider Objekt festlegen.

Diese Abhängigkeitseigenschaft erbt Eigenschaftswerte. Wenn untergeordnete Elemente ohne anderen Wert DataContext für die Festlegung über lokale Werte oder Formatvorlagen vorhanden sind, legt das Eigenschaftssystem den Wert fest, der den DataContext Wert des nächsten übergeordneten Elements mit diesem zugewiesenen Wert aufweist.

Alternativ können Sie eine der folgenden Eigenschaften der Binding Klasse verwenden, um die Bindungsquelle explizit anzugeben: ElementName, Source, oder RelativeSource. Weitere Informationen finden Sie unter How to: Specify the Binding Source.

In XAML DataContext wird am häufigsten als Binding Deklaration festgelegt. Sie können entweder eigenschaftenelementsyntax oder Attributsyntax verwenden. Die Attributsyntax wird im Beispiel auf dieser Seite angezeigt. Sie können den Code auch festlegen DataContext .

Verwendung von XAML-Eigenschaftenelementen

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

Verwendung von XAML-Attributen

<object DataContext="bindingUsage"/>  

- oder -

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

XAML-Werte

dataContextObject
Ein direkt eingebettetes Objekt, das als Datenkontext für alle Bindungen innerhalb des übergeordneten Elements dient. In der Regel ist dieses Objekt eine Binding oder eine andere BindingBase Unterklasse. Alternativ können rohe Daten eines beliebigen CLR-Objekttyps, der für die Bindung vorgesehen ist, hier platziert werden, wobei die tatsächlichen Bindungen später definiert sind.

bindingUsage
Eine Bindungsverwendung, die einen geeigneten Datenkontext auswertet. Weitere Informationen finden Sie unter Binding als Markuperweiterung.

resourceExtension
Eine der folgenden: StaticResourceoder DynamicResource. Diese Verwendung wird verwendet, wenn sie auf Rohdaten verweist, die als Objekt in Ressourcen definiert sind. Siehe XAML-Ressourcen.

contextResourceKey
Der Schlüsselbezeichner für das Objekt, das innerhalb eines Objekts ResourceDictionaryangefordert wird.

Informationen zur Abhängigkeitseigenschaft

Bezeichnerfeld DataContextProperty
Metadateneigenschaften auf true festgelegt Inherits

Gilt für