【发布时间】:2018-08-04 12:35:22
【问题描述】:
我有一个窗口,当这个窗口关闭时我需要触发一个特定的方法,我做到了:
public FooWindow()
{
Closing += (x, y) => Exit();
}
private void Exit()
{
if (someVariable)
{
Environment.Exit(1);
}
else
{
Close();
}
}
当调用 Exit 事件时,到达 close 方法但我得到了
System.InvalidOperationException:在窗口关闭后无法设置可见性或调用 Show、ShowDialog 或 WindowInteropHelper.EnsureHandle。
我做错了什么?
【问题讨论】:
-
我没有看到任何设置可见性或调用
Show的代码。无论如何,您为什么在关闭时退出应用程序?这不会发生吗?还是您的表格是从另一个表格中调用的?在后一种情况下,您应该关闭 parent 窗口,而不是程序。 -
因为我在另一种方法中也使用了exit方法,所以我无法在关闭事件中关闭应用程序但我需要调用exit