我尝试创建一个简单的UserControl
在 WPF 中使用 MVVM。现在我需要为UserControl
,所以我尝试在中创建依赖属性UserControlViewModel
(我不想处于代码隐藏状态)。
为了创建依赖属性UserControlViewModel
我需要继承自DependencyObject
。继承是一个好的做法吗DependencyObject
in UserControlViewModel
?也就是说,遵循 MVVM 来设计一个好的方法吗?UserControl
?
如果您创建了一个具有您希望其属性的自定义控件bindable(例如以下代码),您cannot use INotifyPropertyChanged
你呢must use a DependencyObject
.
<MyUserControl MyDependencyProperty="{Binding PropertyPath}" />
但使用时DependencyObjects
你应该记住:
-
DependencyObjects
未标记为可序列化。
- The
DependencyObject
类覆盖并密封了两者Equals()
和GetHashCode()
方法。
-
A DependencyObject
具有线程亲和力 - 它
只能在创建它的线程上访问。
要查看讨论视图模型中 INPC 和 DP 实现的良好 MVVM 示例,请参阅此article http://social.technet.microsoft.com/wiki/contents/articles/13536.easy-mvvm-examples-in-extreme-detail.aspx.
有关 INPC 与 DP 辩论的更多信息,请阅读这个博客 http://kentb.blogspot.co.uk/2009/03/view-models-pocos-versus.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)