我有一个使用MVVM模式的Silverlight 4应用程序。我有: 1.标准视图 2.标准ViewModel 3.一个单独的UserControl,它本质上是一个围绕DataGrid的包装器。
我已将UserControl放在我的View上,其DataContext是ViewModel。 ViewModel具有一个属性,其中包含UserControl所需的信息(网格的配置详细信息)。我希望在UserControl中创建“something”,以便我可以绑定到ViewModel上的属性,当此属性更改时,UserControl可以根据需要重新配置。
这是“DependencyProperty”吗?
解决方案:
我接受了sternr的建议,并在UserControl中实现了DependencyProperty,以便绑定到ViewModel上的属性。我使用以下链接中的Visual Studio片段来帮助对属性进行编码:http://wildermuth.com/2009/03/09/Silverlight_Dependency_Property_Snippet
答案 0 :(得分:2)
为了使用PropertyName="{Binding}"
机制,您必须使用DependencyProperty
但是,如果您只想让其他资源订阅您的某个属性上的更改,那么实现INotifyPropertyChanged接口就足够了