//childForm:定义父窗体属性:Fmain(public);//主窗体:
实例化子窗体;
调用前对子窗体赋值:Fmain = this;注意在窗体重你的动态生成菜单的方法改成public然后在子窗体关闭前,对父窗体重新生成菜单
实例化子窗体;
调用前对子窗体赋值:Fmain = this;注意在窗体重你的动态生成菜单的方法改成public然后在子窗体关闭前,对父窗体重新生成菜单
f2.showDialog(this);
rebuildmenu();
并在 子窗品 chFrom 中也定议一个 public p;private void Openfrom() //加入主窗体中
{
chFrom myfrom = new chFrom();
myfrom.p= this.p;
myfrom.showDialog();
this.p= myfrom.p;
myfrom.Dispose ();
//在这里更改你的主菜单你行了
}
你的办法不可行,你那个是子窗体加载时候运行的吧!?
“我又创建一个用来登陆的子窗口,要求在窗体关闭的时候,更改父窗口中P的值”
我在子窗体中这么写:
main mf=new main();
mf.Menu=null;
mf.CreateMenu("@A=1|A1=1|A2=1|A3=1|A4=1|B=1|B1=1|B2=1|B3=1|B4=1|C=1|C1=1|C2=1|C3=1");
但是无效!请大家继续帮我!
原谅我的菜吧!如何传递!?
Cldform cld=new Cldform();
cld.owner=this;//this就是mainform
cld.show;
在子窗体的closing事件中这样写
MainForm mf=(MainfForm)this.owner;
mf.P="@A=1|A1=1|A2=1|A3=1|A4=1|B=1|B1=1|B2=1|B3=1|B4=1|C=1|C1=1|C2=1|C3=1";//P必须为public的
mf.CreateMenu(mf.P);
你的这个方法应该还可以应该到更多的地方吧!
嘿嘿