3

我想知道在 Caliburn MVVM 框架中组织视图模型的最佳方式是什么。

我看到许多示例,其中视图模型是位于文件夹中的简单类,名称为 ViewModels,视图位于文件夹 Views 中。

例如,项目具有以下结构:

- WPF app
  - ViewModels [Folder]
      -ShellViewModel [Class]
      -ViewModelA [Class]
      -ViewModelB [Class]
  -Views [Folder]
     -ShellView [Class]
     -ViewA [Class]
     -ViewB [Class]

在许多情况下,我有一个非常复杂的视图模型。

在我看来,将视图和视图模型放在单个 WpfControlLibrary 中会很好。

但我不确定这是否是使用 MVVM 设计组织 WPF 应用程序的好方法。

我认为 Caliburn 框架也可以在视图模型不是名为 ViewModels 的文件夹中的类的情况下工作。

所以我的问题是在使用 Caliburn 框架的 WPF 应用程序中组织视图和视图模型的正确方法是什么。

4

1 回答 1

2

如果这是一个新项目,创建者建议使用 Caliburn micro。无论哪种方式,都可以将它们组织在 Views/ViewModels 目录中,或者通过像 Customer 这样的功能来组织它们。

在 hello 屏幕示例中,它们是按功能组织的,因为每个功能都是要加载的模块。另一个很好的例子是媒体猫头鹰的例子,其中每个模块都在自己的程序集中。

ViewModelLocator 和 ViewLocator 可以配置为解析许多不同结构的 ViewModel 和视图。

于 2012-04-01T14:48:44.593 回答