Ter*_*ver
12
将菜单项的MergeAction设置为"MatchOnly".
添加
因为这可能有点棘手,我将添加一个步骤列表来做一个简单的例子.
- 创建一个新的Windows窗体应用程序.
- 添加新的Windows窗体并将其名称保留为Form2.
- 打开Form1设计器(如果尚未打开).
- 单击表单并将Form1的IsMdiContainer设置为True.
- 打开工具箱并将MenuStrip添加到Form1.
- 在"在此处键入"框中键入&File
- 在子项"在此处键入"框中键入A.
- 在子项"在此处键入"框中键入B.
- 您的MDI容器(Form1)应该有一个文件菜单,其中包含项目A和B.
- 双击A项以添加单击处理程序.
- 添加
new Form2 { MdiParent = this }.Show();到处理程序方法.
- 打开Form2设计师.
- 打开工具箱并将MenuStrip添加到Form2.
- 注意:有关Form2 MenuStrip上的Visible属性的信息,请参阅下文,此时可以将其设置为False.
- 在"在此处键入"框中键入&File
- 在子项"Type Here"框中键入C.
- 你的MDI子(Form2)应该有一个带有项目C的文件菜单.
- 单击File菜单项,然后在Properties窗口中将MergeAction设置为MatchOnly.
- 运行程序.
请注意,"文件"菜单项为A和B.
单击文件 - > A以创建子窗口.
请注意,容器上的"文件"菜单现在包含A,B和C.
另请注意,子项上的"文件"菜单已存在,但没有项目.这是因为C被合并了.
您现在可以将子菜单的MenuStrip.Visible属性设置为False,以便子项不显示菜单.在设计菜单时将其保留为True是很方便的,这样您就可以验证所有子菜单项是否已正确合并(它们将从子菜单中消失).
您可以使用MergeIndex属性来控制子项如何合并到容器中.