什么是XAML中的DataContext?

时间:2015-07-23 14:56:52

标签: xaml

请描述XAML中的DataContext以及何时使用它以及{Binding}语法之间的关系。 (用例子)(简单来说)

非常感谢你。

1 个答案:

答案 0 :(得分:1)

Microsoft文档here中描述了数据上下文。

datacontext是可访问当前元素(也在其范围内)的数据。因此,TextBox可能将datacontext设置为SomeObject。如果您使用绑定绑定到此处,请执行以下操作:

<TextBox DataContext={binding Path=SomeObject} Text={Binding Path=MyString} />

文本框将包含一个包含SomeObject值的datacontext。对此元素(或任何嵌套元素)执行的任何绑定都将在此范围内。所以,对“文本”的约束力是&#39;依赖属性将尝试在SomeObject.MyString中找到该值。

重要的是要注意数据上下文传递给它的子元素:如果在父元素上设置了datacontext而你没有在其子元素上显式覆盖它,那么子元素也将具有相同的数据背景。