如何使用C#4.0在contextmenustrip中添加子菜单项?
我有一个与treenode相关的contextmenustrip控件。 我在表单本身中手动创建了一个菜单项(例如,命名为“Assign”)。
现在,我想在用户单击此Assign项时添加子菜单项,它将创建一个用户名列表作为带有选中或未选中选项的子菜单项。
例如,一旦用户单击Assign,然后我想动态显示用户名。
要添加项目,您可以致电
myContextMenuStrip.Items.Add("Item title", null, myClickHandler);
要添加子菜单,您可以获取现有项目并对其执行相同操作:
(myContextMenuStrip.Items[0] as ToolStripMenuItem).DropDownItems.Add(...)
定义菜单条和项目
ContextMenuStrip menu = new ContextMenuStrip(); ToolStripMenuItem item, submenu;
创建新项目。
submenu = new ToolStripMenuItem(); submenu.Text = "Sub-menu 1";
此时您的新项目与其他项目一样。 现在创建几个新项目并将它们添加到子菜单:
item = new ToolStripMenuItem(); item.Text = "Sub-item 1"; submenu.DropDownItems.Add(item); item = new ToolStripMenuItem(); item.Text = "Sub-item 2"; submenu.DropDownItems.Add(item);
最后将子菜单添加到主ContextMenuStrip
menu.Items.Add(submenu);