0

在某些情况下,我想防止关闭表单。我知道 OnFormClosing 的用法,但是当表单被隐藏时(Visible==false),不会调用 OnFormClosing 方法。在这种情况下,有没有办法拦截表单关闭?

编辑(更多细节):表单是 MdiParent 中的一个子项,应该在后台保持不可见并等待来自另一个线程的调用(通过 Invoke)。

当用户“断开连接”时,MdiParent 会关闭所有子窗口,在这种情况下,上述表单应保持打开状态,但不可见并仍在等待调用。当 MidParent 本身关闭时,所有表单都应关闭。

Edit2(没有解决方案?):似乎没有解决方案。我现在的解决方法是在 MdiParent 代码中排除我的非关闭表单,这会关闭所有其他表单。

4

1 回答 1

2
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
                // This will cancel the event
                e.Cancel = true;
}

无论出于何种原因,这都会有效地阻止表单关闭。

于 2011-03-22T12:04:00.600 回答