我有两种形式(称为form1作为mdi容器和form2),在form1中有一个opentoolstripmenuitem,当opentoolstripmenuitem点击form2并且opentoolstripmenuitem变为禁用时,但是当我点击form2右上角的closebox时,opentoolstripmenu仍然禁用,我希望它在单击关闭框时再次启用。
这是我在form1中的代码:
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
openToolStripMenuItem.Enabled = false;
Form2 newMDIChild = new Form2();
newMDIChild.MdiParent = this;
newMDIChild.Show();
}
任何建议??
答案 0 :(得分:1)
在单击处理程序中,为Form2的Closing或Closed事件创建一个处理程序:
newMDIChild.FormClosed += new FormClosedEventHandler(newMDIChild_FormClosed);
和
void newMDIChild_FormClosed(object sender, FormClosedEventArgs e)
{
openToolStripMenuItem.Enabled = true;
}
答案 1 :(得分:1)
简单只需在表单上使用ShowDialog()并在Showdialog
之后启用它private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
openToolStripMenuItem.Enabled = false;
Form2 newMDIChild = new Form2();
newMDIChild.MdiParent = this;
newMDIChild.ShowDialog();
openToolStripMenuItem.Enabled = true;
}
showdialog之后的下一个代码在对话框关闭之前不会被执行
希望它有效
由于