在我传递参数之前,DataContext发生了变化

时间:2012-01-26 09:34:26

标签: c# .net silverlight windows-phone-7

我有一个带有依赖项属性的控件,我想传递它是一个类中的属性,我还想使用一个ObservableCollection,该类的一部分作为该控件的datacontext。

<mycontrols:News 
   feedStatus="{Binding newsData.newsStore.feedStatus}" 
   DataContext="{Binding newsData.newsStore.news}"
/>

这里的问题是在评估{Binding newsData.newsStore.feedStatus}时使用DataContext如何让它首先传递feedStatus然后设置DataContext。

如果silverlight能够回溯跟踪datacontexts父级,我会使用单个datacontext,但我不认为是这种情况。

我可以将datacontext设置为嵌套参数吗?

1 个答案:

答案 0 :(得分:3)

DataContext设置为DataContext="{Binding newsData.newsStore},然后将feedStatusnews属性绑定到UserControl内。

或者使用多个依赖项属性,而不是DataContext。

另外,请使用.NET命名约定(PascalCase!)。 Java风格的外壳让我的眼睛畏缩。