FrameworkContentElement.DataContext Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft den Datenkontext für ein Element ab, wenn es an der Datenbindung teilnimmt, oder legt ihn fest.
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
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 und der Bindungspfad auf eine Eigenschaft darin 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. des Pfads.
Der Datenkontext kann direkt auf ein CLR-Objekt (Common Language Runtime) festgelegt werden, wobei die Bindungen auf 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 für DataContext lokale Werte oder Formatvorlagen vorhanden sind, legt das Eigenschaftensystem den Wert auf den DataContext Wert des nächstgelegenen übergeordneten Elements fest, dem dieser Wert zugewiesen ist.
Alternativ können Sie eine der folgenden Eigenschaften der Binding Klasse verwenden, um die Bindungsquelle explizit anzugeben: ElementName, , Sourceoder 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 eigenschaftselementsyntax oder Attributsyntax verwenden. Die Attributsyntax wird im Beispiel auf dieser Seite gezeigt. Sie können auch im Code 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. Ausführliche Informationen finden Sie unter Binding Markup Extension.
resourceExtension Eine der folgenden: StaticResource, oder DynamicResource. Diese Verwendung wird verwendet, wenn auf Rohdaten verwiesen wird, die als Objekt in Ressourcen definiert sind. Siehe XAML-Ressourcen.
contextResourceKey Der Schlüsselbezeichner für das Objekt, das von innerhalb eines ResourceDictionaryObjekts angefordert wird.
Informationen zur Abhängigkeitseigenschaft
| Element | Wert |
|---|---|
| Bezeichnerfeld | DataContextProperty |
Auf Metadateneigenschaften festgelegt true |
Inherits |