FrameworkContentElement.DataContext 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當元素參與資料綁定時,取得或設定其資料上下文。
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
屬性值
作為資料上下文的物件。
- 屬性
範例
以下範例透過建立一個新的自訂資料物件,將該物件設定為 Paragraph,並將綁定路徑設定為該物件中的屬性,從而對元素DataContext建立綁定。
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")
備註
資料上下文 是一個概念,允許元素繼承其父元素關於用於綁定的來源資訊,以及綁定的其他特性,例如路徑。
資料上下文可以直接設定為通用語言執行時(CLR)物件,綁定會評估該物件的屬性。 或者,你也可以將資料上下文設定為物件 DataSourceProvider 。
這種依賴性質會繼承財產價值。 若有子元素沒有其他透過本地值或樣式建立的值 DataContext ,屬性系統會將該值設定為 DataContext 最近且該值為最近且賦值為父元素的值。
或者,你也可以使用類別的 Binding 以下特性之一來明確指定綁定來源: ElementName、、 Source或 RelativeSource。 欲了解更多資訊,請參閱 如何指定綁定來源。
在 XAML 中, DataContext 通常會設定為 Binding 宣告。 你可以使用屬性元素語法或屬性語法。 屬性語法如本頁範例所示。 你也可以用程式碼設定 DataContext 。
XAML 屬性元素使用方式
<object>
<object.DataContext>
<dataContextObject />
</object.DataContext>
</object>
XAML 屬性使用方式
<object DataContext="bindingUsage"/>
-或-
<object DataContext="{resourceExtension contextResourceKey}"/>
XAML 值
dataContextObject 一個直接嵌入的物件,作為父元素內任何綁定的資料上下文。 通常,這個物件是某 Binding 個子類別或其他 BindingBase 子類別。 或者,任何用於綁定的 CLR 物件類型的原始資料也可以放在這裡,實際綁定則會在後續定義。
bindingUsage 一種結合式使用,會根據適當的資料上下文評估。 如需詳細資訊,請參閱Binding 標記擴充。
resourceExtension 以下其中之一: StaticResource,或 DynamicResource。 此用法用於指代資源中定義為物件的原始資料。 請參閱 XAML 資源。
contextResourceKey 在 中請求 ResourceDictionary物件的金鑰識別碼。
相依財產資訊
| Item | 價值觀 |
|---|---|
| 識別碼欄位 | DataContextProperty |
元資料屬性設為 true |
Inherits |