《MDI父窗体中及子窗体最大化后消除子窗体在父窗体菜单栏中及图标》由会员分享,可在线阅读,更多相关《MDI父窗体中及子窗体最大化后消除子窗体在父窗体菜单栏中及图标(5页珍藏版)》请在金锄头文库上搜索。
1、MDI 父窗体中的子窗体最大化后消除子窗体在父窗体菜单栏中的图标1.建立 MainForm(设置属性 IsMdiContainer=true)父窗体如下所示。2.双击工具栏上的 Form1 图标。设置 Form1 子窗体的显示。Form1 子窗体显示代码如下:private void toolStripButton1_Click(object sender, EventArgs e)Form1 f1 = new Form1();f1.WindowState = FormWindowState.Normal;f1.MdiParent = this;f1.Show();3.选中菜单栏 menuSt
2、rip1,设置其 ItemAdded 事件。menuStrip1 的 ItemAdded 事件代码如下:private void menuStrip1_ItemAdded(object sender, ToolStripItemEventArgs e)if (e.Item.Text.Length = 0 /隐藏子窗体图标| e.Item.Text = 最小化(&N) /隐藏最小化按钮| e.Item.Text = 还原(&R) /隐藏还原按钮| e.Item.Text = 关闭(&C) )/隐藏最关闭按钮e.Item.Visible = false;4.编译运行该该项目,点击工具栏上的 Form1 按钮,普通、最大化和最小化显示情况如下图所示,可见此时子窗体的图标在父窗体的菜单栏中已经消失,至此,任务完成,搞定。注意 :如果子窗体含有菜单的话,默认情况是子窗体的菜单会合并显示在父窗体的菜单上;如果不需要在父窗体菜单中显示,只需把父窗体菜单的 AllowMerge 属性设置为 false 即可。子窗体 From3如果父窗体和子窗体菜单的属性 AllowMerge=true 时,显示情况如下所示:当父窗体菜单的属性 AllowMerge=false 时,显示情况如下所示:总结:父、子窗体的菜单是否合并显示在父窗体的菜单中根据具体需要来决定。