1

这是对 MVVM 概念的正确解释吗?

  • 数据模板 -> 查看
  • DependencyObject(控件、ListView 等)-> ViewModel
  • 数据上下文 -> 模型

如果我要创建自己的 ViewModel,它会替换实际的控件并需要显式模板?

ViewModel 中的“模型”一词不是指实际模型(例如在 DomainModel 中)?

我还向模型添加了 Presenters,我将其视为实用程序类,用于提升和向视图公开属性等。你能说 ViewModel 是自上而下的表示(视图的模型),而 Presenter 更像是 ModelView,是自下而上的表示(模型的视图)吗?

在这种情况下,我将不得不将上述内容修改为:

  • ...
  • 数据上下文 -> 演示者
  • 演示者 -> 模型

而且我通常不会从 DependencyObject 派生来创建我的自定义表示包装器,而只是创建我的自定义通用视图模型,例如控件而不是我的模型视图?

4

1 回答 1

0

通常 MVVM 是这样解释的:

View -> Controls, DataTemplates etc.
Model -> 你的实际数据模型(数据库或其他)
ViewModel -> 公开 View 可用于 DataBinding 的属性和命令

这意味着,您的视图将 ViewModel 作为 DataContext,ViewModel 的属性反映了模型的数据,并且 ViewModel 的命令对模型进行操作。在简单的情况下,Model 和 ViewModel 有时是相同的。

可以在此处找到概述:http: //blogs.msdn.com/b/johngossman/archive/2005/10/08/478683.aspx
如果您寻找它,您还可以找到很多关于构建 MVVM 应用程序的示例.

于 2012-04-10T09:14:11.207 回答