我有一种主窗体和两种子窗体
MainForm
ChildFormA - unique
ChildFormB - have multiple forms of this type
我用以下方法创建 ChildFormA:
ChildFormA form1 = new ChildFormA();
form1.MdiParent = this;
form1.Show();
但是当我关闭它时:
form1.Close();
我无法重新打开它。 我已经阅读了一些可以隐藏此表单或将其关闭的提示。但是 X 按钮仍然关闭表单。 如何重新打开或如何防止 X 按钮关闭并简单地隐藏它?
最佳答案
如果您希望您的子表单保持其状态,您必须订阅 FormClosing
事件并将事件参数的 Cancel
属性设置为 是的
。
public ChildForm()
{
...
FormClosing += new FormClosingEventHandler(ChildForm_FormClosing);
}
void ChildForm_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
Hide();
}
请记住,如果您不向其中添加更多逻辑,您的表单将不会被处理掉。
否则,您可以创建它的一个新实例。
关于c# - 重新打开子窗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8713807/