【发布时间】:2010-11-22 12:14:39
【问题描述】:
我正在开发一个新的 WPF 应用程序,并试图尽可能地接近 MVVM 模式。我的 XAML 文件现在没有代码隐藏,我所有的交互都是使用 Josh Smith 的 RelayCommand 类和我的 ViewModel 类中的命令来实现的。
在我开始处理诸如关于框和系统首选项页面之类的家务管理任务之前,这非常有效。我希望将这些作为模式对话框,但如果我创建一个 RelayCommand 来打开这些页面,我将在我的视图模型中创建对视图的依赖。
这让我觉得违背了 MVVM 模式的本质。
是否有在 MVVM 模式中创建新窗口(模态和/或非模态)而不创建依赖项的既定方法?似乎我可以保持 ViewModel 干净的唯一方法是在 XAML 代码隐藏文件中创建一个 Click 事件处理程序,并在旧视图中创建新视图。
有什么建议吗?
【问题讨论】:
标签: mvvm modal-dialog about-box