C# 如何将子菜单项添加到菜单项
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/16146801/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to add submenu items to menuitems
提问by hs.chandra
I have created a Table layout in windows forms as shown in figure, i have added a right mouse button click Menu to my table,
我在 Windows 窗体中创建了一个表格布局,如图所示,我在表格中添加了一个鼠标右键单击菜单,
i wnt to add submenu items to following menuitems such as
我不想将子菜单项添加到以下菜单项中,例如
When i click add deviceit should show subitems such as sounder, MCP, strobeetc
When i click faultit should show subitems such as open circuit fault, sounder fault, `short circuit fault' so on
当我点击add device它应该显示子项,如sounder,MCP,strobe等当我点击fault它应该显示子项,例如open circuit fault,sounder fault`短路故障”等
This is how i created menuitems
这就是我创建菜单项的方式
ContextMenu m = new ContextMenu();
MenuItem addDevice = new MenuItem("Add Device");
MenuItem deleteDevice = new MenuItem("delete Device");
MenuItem fire = new MenuItem("Fire");
MenuItem fault = new MenuItem("Fault");
MenuItem suppress = new MenuItem("Suppress");
m.MenuItems.AddRange(new MenuItem[] { addDevice, deleteDevice, fire, fault,suppress});
tableLayout.ContextMenu = m;
m.Show((Control)(sender), e.Location);
The below is my form and table layout
下面是我的表格和表格布局
采纳答案by Habib
You can add MenuItemsto existing MenuItemlike:
您可以添加MenuItems到现有的,MenuItem如:
MenuItem addDevice = new MenuItem("Add Device");
addDevice.MenuItems.Add( new MenuItem("Add More .."));
It would be visible like:
它会像这样可见:


回答by Habib
You can add This
你可以添加这个
var someMenu= new MenuItem("Foo");
someMenu.MenuItems.Add( new MenuItem("foo "));
回答by user1845588
That format doesn't work for me. I'm forced to use:
这种格式对我不起作用。我被迫使用:
// People often exclude the applicable "using" statements--so samples don't work!
using System.Web.UI.WebControls;
// Create the MAIN menu item
MenuItem mnuMenuItem = new MenuItem();
// Create the SUB menu item
MenuItem mnuSubMenuItem = new MenuItem();
// Create the SUB menu item, "under" the MAIN menu item!
mnuMenuItem.ChildItems.Add(mnuSubMenuItem);
回答by Tirtha
MenuItem newMenuItem1 = new MenuItem("Employee Master");
MenuItem mnuSubMenuItem = new MenuItem();
newMenuItem1.ChildItems.Add(mnuSubMenuItem);
mnuSubMenuItem.Text = "Add User...";
mnuSubMenuItem.NavigateUrl = "ADDURL.aspx";
MenuItem mnuSubMenuItem1 = new MenuItem();
newMenuItem1.ChildItems.Add(mnuSubMenuItem1);
mnuSubMenuItem1.Text = "Edit User...";
mnuSubMenuItem1.NavigateUrl = "EDITURL.aspx";
this.MenuMaster.Items.Add(newMenuItem1);

