FrameworkContentElement.DataContext 属性

定义

获取或设置元素参与数据绑定时的数据上下文。

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

属性值

Object

要用作数据上下文的对象。

属性

示例

以下示例通过创建新的自定义数据对象、将该对象设置为该对象DataContext并将绑定路径设置为其中的属性来设置Paragraph元素上的绑定。

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以下属性之一显式指定绑定源:ElementNameSourceRelativeSource。 有关详细信息,请参阅 如何:指定绑定源

在 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
下列项之一: StaticResourceDynamicResource。 引用资源中定义为对象的原始数据时,将使用此用法。 请参阅 XAML 资源

contextResourceKey
要从中 ResourceDictionary请求的对象的密钥标识符。

依赖项属性信息

标识符字段 DataContextProperty
元数据属性设置为 true Inherits

适用于