有没有办法在Silverlight中停止自动继承DataContext?

7
有没有办法停止Silverlight中自动DataContext继承?
我在代码中为父UserControl设置了我的DataContext。因此,所有UserControl内部的xaml绑定都会尝试绑定到它们获取的新DataConext(通过自动DataContext继承)。
UserControl的子元素的DataContext(实际上它们是子孙元素)是我需要在UserControl的代码中设置的...我不希望它们变得聪明,因为最终它们会绑定到错误的数据对象! :-)
1个回答

16
你能在XAML中将DataContext设置为{x:Null},或在代码中设置为null,以便于不希望继承上下文的项吗?

太好了,非常感谢。我在星号元素上设置了{x:Null}属性:"ParentGrid -> UserControl -> LayoutRoot -> ContainingCanvas -> Other Controls -> Binding"。这确保了UserControl有了自己的上下文,而低层绑定不会尝试返回,因为它们发现了一个明确设置为null的值。 - Anthony Truskinger

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接