我喜欢MVVM的想法,但是真的很难实现真正基本功能所需的箍跳,例如从模态对话框中获取值或关闭窗口。我的意思是......
App.xaml
定义StartupUri=MainWindow.xaml
。
MainWindow.xaml
定义DataContext=MainWindowViewModel
。
根据MVVM,View了解ViewModel,但反之亦然。
我找不到一种(常见的,逻辑的?直截了当的?)截取关闭事件的方法。我可以使用像MVVMLight这样的“聪明”代码块..但我总是最终处理一个事件(乱七八糟)或者无法取消关闭或完全丢失它。
我拒绝相信这是如此困难 - 我必须陷入另一个noobie陷阱。请你说完!
再次感谢您的时间和耐心 - 非常感谢。
答案 0 :(得分:3)
这可以通过附加属性或行为轻松处理。我写了一个sample on the Expression Gallery,展示了如何使用行为将此处理连接到VM中的命令而不使用后面的代码。
答案 1 :(得分:0)
Caliburn.Micro框架非常优雅地处理对话框和关闭窗口