wpf - 如何判断 WPF 窗口是否关闭?

标签 wpf

我正在开发一个应用程序,该应用程序显示一些子窗口,这些子窗口可以由用户关闭或自动关闭。在调试一些抛出的异常时,我发现我试图在已经关闭的窗口上调用诸如 Hide() 之类的方法;这个特定的代码分支对于这两种情况都是常见的,但我没有注意到这一点。

我的第一个想法是在 Window 上寻找一个指示窗口已关闭的属性。我好像找不到一个在 WinForms 中,我会查看 IsDispose 属性,以获取某种可靠的指示符,表明表单已关闭(它不能可靠地用于对话框,但我不使用对话框。)在 Window 上没有看到任何等效内容。 Window.Close() 的文档似乎没有表明该方法更改的任何属性。我是否遗漏了一些明显的东西,或者是知道窗口是否已关闭以处理 Closed 事件的唯一方法?对于一项简单的任务来说,这似乎是一个苛刻的要求。

最佳答案

根据this conversation在 MSDN WPF 论坛上(请参阅上一篇文章),您可以检查 IsLoaded 是否为 false,这意味着该窗口“有资格”卸载其内容。我希望这对你有用!

关于wpf - 如何判断 WPF 窗口是否关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/381973/

相关文章:

wpf - 如何在 XAML 中更改 ToggleButton 的自定义内容

c# - 在 View 模型之间切换

c# - TreeView 项目验证

c# - 如何从MobileServiceUser获取用户名、电子邮件等?

wpf - 为我的 window 改变 Aero 玻璃的颜色?

c# - 关于 ViewModel 和 View 交互

c# - 如果从隐藏窗口调用 ShowDialog() 会提前结束

c# - WPF - 程序崩溃

wpf - 强制 DataGrid 行刷新而不使用 INPC

c# - RotateTransform3D 有问题