3

我有一个 WPF 应用程序,它允许我编辑一些数据。

我想如果我们尝试关闭应用程序,用户必须承认他将丢失其修改。

但是在这里,我遇到了几个问题:

  1. windows对象上没有“关闭”命令(当我猜想背后的代码有事件时,我可以执行命令)
  2. 我不知道用 MVVM 模式取消某些东西的推荐方法是什么?通常我会放e.Cancel = true;,但我们不能放,因为它是一个命令

那么你会如何询问用户他是否确定要使用 MVVM 模式关闭窗口呢?

4

2 回答 2

0

这个概念是为您的窗口添加一个“挂钩”到窗口关闭事件的行为。一旦行为被挂钩,您可以执行几乎任何您需要的操作,而不会违反 MVVM 的原则。检查此链接以获取有关如何创建窗口关闭行为的信息:

http://gallery.expression.microsoft.com/WindowCloseBehavior/

希望有帮助。

于 2012-11-29T13:13:29.337 回答
0

由于您将此问题标记为“mvvm-light”,因此您可以检查 MVVMLight 中的 EventToCommand。它可能会满足您的需求。

这个问题类似:

使用 WPF / MVVM Light Toolkit 处理窗口关闭事件

于 2012-11-29T14:07:08.143 回答