C#MDI窗体子窗体关闭为何父窗体的菜单项和工具栏按钮不能恢复?

来源:百度知道 编辑:UC知道 时间:2024/09/21 21:56:54
MDI窗体,含菜单和工具栏。
在form1中用form frm=new form2的方法show()出一个子窗体。
private void form2_load(object sender, EventArgs e)
{
((frmMain)this.MdiParent).mnuSave.Enabled = true;
}

private void form2_formclosing(object sender, FormClosingEventArgs e)
{
((frmMain)this.MdiParent).mnuSave.Enabled = fals;
}
调试结果,form2_load()运行结果没错,mnuSave菜单项被禁止了。
可出乎意料,form2_formclosing()运行不出错,可是mnuSave菜单项恢复不了。也就是说这个事件对父窗体不起作用!
另,引申开:有实时监视事件的方法吗?比如说,richtextbox内容改变,工具栏按钮toolSave的禁止和恢复?
form1就是frmMain,写错了,不过大家都能看懂。
1楼的,frmMain加载时mnuSave被禁用了,没有打开的子窗体啊,保存什么?你是不是没看懂,打开后恢复,关闭子窗体禁止啊!没错

=fals;

这样也行?
--------------------------------------------
private void AboutBox1_Load(object sender, EventArgs e)
{
((Form1)this.MdiParent).MaximizeBox = false;
}

private void AboutBox1_FormClosing(object sender, FormClosingEventArgs e)
{
((Form1)this.MdiParent).MaximizeBox = true;
}
我的这个可以

AboutBox1 ab = new AboutBox1();
ab.MdiParent = this;
ab.Show();

我的加载子窗体代码

你的true和false是不是反了啊