如何确定是否处置窗口

时间:2011-04-27 10:55:26

标签: wpf

当应用程序关闭时,我在WPF MainWindow1.Xaml中有一个函数。但在未知的情况下,用户可以使用“文件>关闭”按钮以另一种方式关闭应用程序。如果当前的MainWindow1.xaml已经被处理掉了,我只需要在“Closing”方法中知道。但我找不到任何财产。

你能帮助我吗?

2 个答案:

答案 0 :(得分:6)

你可以尝试

var source = PresentationSource.FromVisual(yourWindow)

如果source为空或source.IsDisposed == true,则表示您的窗口已关闭。

答案 1 :(得分:1)

您可以附加Closed上的Window事件。 当调用此事件时,窗口关闭。实际上我必须纠正:根据the MSDN documentation,它只表示在调用此事件时无法阻止窗口关闭。
如果听取Closed事件不够好,那么这是另一种选择:How do you tell if a WPF Window is closed?