FrameworkContentElement.DataContext Tulajdonság

Definíció

Lekéri vagy beállítja egy elem adatkörnyezetét, amikor részt vesz az adatkötésben.

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

Tulajdonság értéke

Az adatkörnyezetként használni kívánt objektum.

Attribútumok

Példák

Az alábbi példa egy elem kötését Paragraph állítja be egy új egyéni adatobjektum létrehozásával, az objektum mintaként DataContextvaló beállításával, valamint a benne lévő tulajdonság kötési útvonalának beállításával.

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")

Megjegyzések

Az adatkörnyezet egy olyan fogalom, amely lehetővé teszi, hogy az elemek a szülőelemeiktől örököljenek információkat a kötéshez használt kötésforrásról, valamint a kötés egyéb jellemzőiről, például az elérési útról.

Az adatkörnyezet közvetlenül egy közös nyelvi futtatókörnyezeti (CLR) objektumra állítható be, és a kötések az objektum tulajdonságaira vannak kiértékelve. Másik lehetőségként beállíthatja az adatkörnyezetet egy DataSourceProvider objektumra.

Ez a függőségi tulajdonság örökli a tulajdonságértékeket. Ha vannak olyan gyermekelemek, amelyeknél nincs más érték DataContext a helyi értékek vagy stílusok alapján meghatározva, a tulajdonságrendszer az értéket DataContext a legközelebbi szülőelem értékének állítja be, amelyhez ez az érték van hozzárendelve.

Másik lehetőségként használhatja az osztály alábbi tulajdonságainak egyikét a kötés forrásának Binding explicit megadásához: ElementName, Sourcevagy RelativeSource. További információ : Útmutató: A kötés forrásának megadása.

Az XAML-ben DataContext általában deklarációként Binding van beállítva. A tulajdonságelem szintaxisát vagy attribútumszintaxisát is használhatja. Az attribútumszintaxis az ezen a lapon látható példában látható. A kódban is megadható DataContext .

XAML tulajdonságelem-használat

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

XAML-attribútumok használata

<object DataContext="bindingUsage"/>

-vagy-

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

XAML-értékek

dataContextObject Közvetlenül beágyazott objektum, amely adatkörnyezetként szolgál a szülőelemen belüli kötésekhez. Ez az objektum általában egy Binding vagy egy másik BindingBase alosztály. Másik lehetőségként a kötésre szánt CLR-objektumtípusok nyers adatai is elhelyezhetők itt, a tényleges kötések később definiálva.

bindingUsage A megfelelő adatkörnyezetbe kiértékelt kötéshasználat. További részletekért lásd a Kötési korrektúra bővítményt.

resourceExtension Az alábbiak egyike: StaticResourcevagy DynamicResource. Ez a használat az erőforrások objektumaként definiált nyers adatokra való hivatkozáskor használatos. Lásd : XAML-erőforrások.

contextResourceKey A kért objektum kulcsazonosítója egy ResourceDictionaryadott helyről.

Függőségi tulajdonság adatai

Termék Érték
Azonosító mező DataContextProperty
Metaadat-tulajdonságok beállítása: true Inherits

A következőre érvényes: