我正在创建一个用户控件,这个控件会做一些工作,然后填充三个依赖属性,然后通过绑定被控件的父元素使用。
我的问题是使用 MVVM 在何处保留依赖项属性的最佳实践是什么?我应该为 MVVM 使用框架吗?
谢谢
我正在创建一个用户控件,这个控件会做一些工作,然后填充三个依赖属性,然后通过绑定被控件的父元素使用。
我的问题是使用 MVVM 在何处保留依赖项属性的最佳实践是什么?我应该为 MVVM 使用框架吗?
谢谢
DependencyProperties
旨在由 WPF 的绑定系统使用,该系统将 UI 层与数据层联系起来。它们应该保存在 UI 层,而不是数据层 ( ViewModels
)
关于是否应该使用框架的问题是完全独立的。
我肯定会推荐一个框架,其中包含 MVVM 中经常使用的通用事物(继承对象的基类INotifyPropertyChanged
,a RelayCommand
or DelegateCommand
,消息系统,如EventAggregtor
orMessenger
等),但是我鼓励您花时间弄清楚在使用框架之前 MVVM 是如何工作的 :)
惯用的依赖属性与 ViewModel 表示的“视图状态”无关,也没有理由将它们添加到 ViewModel。我会将它们放在一个文件中,该文件包含您正在实现的控件的行为。
虽然您可以在不使用框架的情况下实现 MVVM 模式,但为什么要重新发明轮子?只需使用众多出色的 MVVM 框架之一(Caliburn、MVVMLight、Simple MVVM Toolkit 等等……)。