gpt4 book ai didi

mvvm - 使用 MVVM 模式打开一个关于框

转载 作者:行者123 更新时间:2023-12-03 10:11:17 24 4
gpt4 key购买 nike

我正在开发一个新的 WPF 应用程序,我正在努力尽可能地接近 MVVM 模式。我的 XAML 文件现在没有代码隐藏,我所有的交互都是使用 Josh Smith 的 RelayCommand 类和我的 ViewModel 类中的命令来实现的。

这非常有效,直到我开始处理内务任务,例如关于框和系统首选项页面。我想将这些作为模态对话框,但是如果我创建一个 RelayCommand 来打开这些页面,我将在我的 View 模型中创建对 View 的依赖。

这让我觉得与 MVVM 模式的纹理背道而驰。

是否有在 MVVM 模式中创建新窗口(模态和/或非模态)而不创建依赖项的既定方法?似乎我可以保持 ViewModel 干净的唯一方法是在 XAML 代码隐藏文件中创建一个 Click 事件处理程序,并在旧 View 中创建新 View 。

有什么建议吗?

最佳答案

处理此问题的一种方法是实现向 ViewModel 提供 View 的服务。 View 向服务注册, View 模型可以从服务请求对话框。这是四人帮的例子mediator pattern .

关于mvvm - 使用 MVVM 模式打开一个关于框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1326210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com