Model-View-ViewModel在 WPF 和 Silverlight 中非常受欢迎。我一直在将它用于我最近的项目,并且是一个非常忠实的粉丝。
我知道这是对 MVP 的改进。 .但是,我想知道 WPF(和 Silverlight)的哪些独特特性允许 MVVM 工作,并阻止(或至少使困难)这种模式使用其他框架或技术工作。
我知道 MVVM 非常依赖 WPF 中强大的数据绑定(bind)技术。这是许多文章和博客似乎提到的一个功能,它是 WPF 的关键,它提供了将 View 与 ViewModel 强分离的方法。但是,many forms 中存在数据绑定(bind)。在其他 UI 框架中。甚至还有像 Truss 这样的项目为 .NET 中的 POCO 提供 WPF 样式的数据绑定(bind)。
除了数据绑定(bind)之外,还有哪些功能使 WPF 和 Silverlight 特别适合 Model-View-ViewModel?
最佳答案
DataBinding、命令、控件模板和 XAML。
如果没有其中之一,MVVM 将更加困难,如果不是不可能的话。以 ASP.net 为例,它有 ASPX 部分(为了示例,它相当于 XAML),它有数据绑定(bind),但它没有命令或控制模板,所以 MVVM 在那里是不可能的。在 WinForms 中,我们有数据绑定(bind),仅此而已,所以也不可能。
关于.net - 是什么让 MVVM 特别适合 WPF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1521331/