FrameworkElement.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
属性值
要用作数据上下文的对象。
- 属性
示例
以下示例说明了数据上下文如何对绑定执行操作,并提供定义绑定属性的特定值的信息。
<Window.Resources>
<src:LeagueList x:Key="MyList" />
</Window.Resources>
<DockPanel DataContext="{Binding Source={StaticResource MyList}}">
注解
数据上下文 是一种概念,它允许元素从其父元素继承有关用于绑定的数据源的信息,以及绑定的其他特征,例如路径。
可以将数据上下文直接设置为 .NET 对象,绑定将评估为该对象的属性。 或者,可以将数据上下文设置为 DataSourceProvider 对象。
此依赖属性继承属性值。 如果没有通过本地值或样式建立的其他值的 DataContext 子元素,则属性系统会将该值 DataContext 设置为分配此值的最近的父元素的值。
或者,可以使用类的 Binding 以下属性之一显式指定绑定源:
- <xref:System.Windows.Data.Binding.ElementName%2A>.
- <xref:System.Windows.Data.Binding.Source%2A>.
- <xref:System.Windows.Data.Binding.RelativeSource%2A>.
有关详细信息,请参阅 如何:指定绑定源。
在 XAML 中, DataContext 通常设置为 Binding 声明。 可以使用属性元素语法或属性语法。 此页上的示例显示了属性语法。 还可以使用代码来设置 DataContext。
DataContext 是一个可绑定属性,用于促进一个上下文可能绑定到另一个上下文的方案。 但是,如果绑定到 DataContext,请注意不要创建循环绑定引用, (不会绑定到 DataContext 自身,因为属性) 的 DataContext 属性值继承性质。
XAML 属性元素用法
<object>
<object.DataContext>
<dataContextObject />
</object.DataContext>
</object>
XAML 属性用法
<object DataContext="bindingUsage"/>
- 或 -
<object DataContext="{resourceExtension contextResourceKey}"/>
XAML 值
dataContextObject
直接嵌入的对象,用作父元素中任何绑定的数据上下文。 通常,此对象是另一 Binding 个 BindingBase 派生类。 或者,可以在此处放置任何用于绑定的对象类型的原始数据,以及稍后定义的实际绑定。
bindingUsage
计算结果为适当数据上下文的绑定用法。 有关详细信息,请参阅 Binding 标记扩展。
resourceExtension
下列项之一: StaticResource
或 DynamicResource
。 引用资源中定义为对象的原始数据时,将使用此用法。 请参阅 XAML 资源。
contextResourceKey
要从中 ResourceDictionary请求的对象的密钥标识符。
依赖项属性信息
标识符字段 | DataContextProperty |
元数据属性设置为 true |
Inherits |