Windows Forms高级界面组件-动态添加菜单
除了在设计视图中创建和修改菜单,上下文菜单和菜单项的属性,还可以在运行时给菜单或上下文菜单添加菜单项。
使用代码创建菜单的方法如下:
private void CreateMenu()
{
MenuStrip mnu=new MenuStrip();//创建MenuStrip对象
ToolStripMenuItem medit=new ToolStripMenuItem("编辑");//创建菜单对象
mnu.Items.Add(medit);//为菜单栏添加主菜单项
ToolStripMenuItem submcopy=new ToolStripMenuItem("复制");//创建菜单对象
//为主菜单添加子菜单项
medit.DropDownItems.Add(submcopy);
this.Controls.Add(mnu);
}
首先要创建菜单栏MenuStrip对象和菜单对象ToolStripMenuItem,调用菜单栏对象的Add()方法,将菜单添加到菜单栏中,如果要创建下级菜单,需要调用菜单的“DropDownItems”的Add()方法添加。最后将菜单栏添加到窗体。
注意:如果是在已有菜单栏中添加菜单项,就不需要创建新的菜单栏对象,直接将菜单对象添加到菜单栏中即可。在调用Add()方法时,注意Items和DropDownItems的区别。
如下实例:
private void CreateMenu()
{
MenuStrip mnu = new MenuStrip();
ToolStripMenuItem toolMenu = new ToolStripMenuItem("文件");
ToolStripMenuItem mnuNew = new ToolStripMenuItem("新建");
ToolStripMenuItem mnuOpen = new ToolStripMenuItem("打开");
ToolStripMenuItem mnuClose = new ToolStripMenuItem("关闭");
toolMenu.DropDownItems.Add(mnuNew);
toolMenu.DropDownItems.Add(mnuOpen);
toolMenu.DropDownItems.Add(mnuClose);
ToolStripMenuItem toolMenu2 = new ToolStripMenuItem("编辑");
ToolStripMenuItem mnulayoutH = new ToolStripMenuItem("水平对齐");
ToolStripMenuItem mnulayoutV = new ToolStripMenuItem("垂直对齐");
toolMenu2.DropDownItems.Add(mnulayoutH);
toolMenu2.DropDownItems.Add(mnulayoutV);
mnu.Items.Add(toolMenu);
mnu.Items.Add(toolMenu2);
this.Controls.Add(mnu);
}