【发布时间】:2012-11-17 12:24:20
【问题描述】:
我有一个 WPF 应用程序,它允许我编辑一些数据。
我希望如果我们尝试关闭应用程序,用户必须承认他将丢失其修改。
但是到了这里,我遇到了几个问题:
- windows 对象上没有“关闭”命令(当我猜想后面的代码有事件时,我可以执行命令)
- 我不知道用 MVVM 模式取消某些东西的推荐方法是什么?通常我会输入
e.Cancel = true;,但我们不能,因为它是一个命令
那么你会如何询问用户是否确定关闭窗口,使用 MVVM 模式?
【问题讨论】:
-
这里要注意的一点是,仅仅因为您使用的是 MVVM 模式,并不意味着您不能使用事件——只是您通常应该尝试在使用命令更有意义的地方避免它。通常,我创建自己的类来扩展实用程序 DLL 中的每个组件(窗口、文本框等),并使用它们。这样,如果我需要一个事件来触发这样的事情,我就不必每次都重新发明轮子。
标签: wpf events mvvm viewmodel mvvm-light