如何让子窗体菜单替换WinForms mdi应用程序中的父菜单?

时间:2015-03-05 20:55:30

标签: c# .net winforms

如何让子窗体菜单替换mdi应用中的父窗体(不只是与它合并)?我的问题与this类似,但有时候当没有显示子窗体时需要显示父菜单以及其他情况,所以我不能让父菜单一直空着。

将menustrip的AllowMerge子项设置为true。我的想法是,当用户选择菜单选项以显示子表单时,子表单的menustrip将与父表单的空菜单合并,使子菜单的外观替换父菜单。以下代码旨在实现这一目标。但结果是菜单为空白。孩子的菜单没有显示。我猜还有更多事情要发生,但我不知道正确的过程。

主要表格中的代码:

Control[] c = Controls.Find("menuStripMain", true);
Control savedMenu = c[0];
Controls.Remove(c[0]);                                        
MenuStrip n = new MenuStrip();
this.MainMenuStrip = n;
ChildForm cw = new ChildForm();
sw.MdiParent = this;
sw.Show();
sw.Focus();

0 个答案:

没有答案