所有,我想知道使用 MVVM 模式从 WPF 启动 [子] 对话框/窗口的公认最佳方法/行业标准。我遇到过以下文章:
A. CodeProject - 使用 MVVM 模式时显示对话框
这种方法对我来说似乎不错,但有些过分了。这是某种程度的代码复制,我不相信这是正确的方法。
B. WPF MVVM 和显示对话框
本文简要介绍了具有各种链接的三个选项,这些选项在解释方法方面都相当/非常差或与主题无关。
有人可以解释一下吗工业标准使用 MVVM 从 WPF 应用程序启动对话框的方法/方法,最好是一些进一步阅读材料的链接?如果您能自己提供一个例子,我当然会非常感激!
谢谢你的时间。
首先,我不知道使用 MVVM 显示对话框的任何“行业标准”方式,因为没有这样的东西。
其次,欢迎来到 MVVM,您刚刚触及了 MVVM 没有标准的领域。
说实话,MVVM 有很多痛点,这就是为什么有大量 MVVM 框架的原因,仅举几个 MVVM Light、PRISM、Caliburn.Micro、Cinch、Catel、WAF、Baboon、shell i停下来或者你想要更多。
现在回答你的问题,在处理了大多数这些框架之后,我注意到一个共同点,它们都使用 DI/IoC 容器,然后为你提供一个接口,比如 IDialogManager 和他们自己的实现,然后他们问你在您的视图模型中接受此接口并使用它来显示对话框。综上所述,我将使用依赖注入,有一个用于显示对话框的接口,然后提供和实现它,并将其注册到 di 容器,然后从我的视图模型或视图中使用它。
Edit:所以您选择了 PRISM(我认为)其中最难的是显示对话框。现在撇开这一点,有一个困难的方法是使用互动请求 (查看文章中间),或者你可以使用这个Answer作为一种更快的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)