首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

请教,怎么在代码中给菜单控件添加子项,再添加子项,再.

2012-11-08 
请问,如何在代码中给菜单控件添加子项,再添加子项,再....MenuStrip控件有个Items属性,表示所有项的集合,每

请问,如何在代码中给菜单控件添加子项,再添加子项,再....
MenuStrip控件有个Items属性,表示所有项的集合,每个项的类型是ToolStripMenuItem类。
我想问的是,每个顶级项(ToolStripMenuItem)的子项是什么类型的,也就是1级项。2级项又是什么类型,3级呢?

请在MenuStrip控件中添加下面的项:
顶级项:视图1
  二级项:视图1-1
  三级项:视图1-1-1
  三级项:视图1-1-2
  二级项:视图1-2
  三级项:视图1-2-1
  三级项:视图1-2-2

[解决办法]
可以递归添加或者访问
[解决办法]

C# code
   public void ShowControl(ToolStripItemCollection items)        {            foreach (ToolStripMenuItem item in items)            {                MessageBox.Show(item.Text);                if (item.DropDownItems.Count > 0)                {                    ShowControl(item.DropDownItems);                }            }        }        private void button1_Click(object sender, EventArgs e)        {            ShowControl(this.menuStrip1.Items);        }
[解决办法]
新建一个Windows Forms应用,添加一个按钮到窗体上,在单击事件里面写:
C# code
private void button1_Click(object sender, EventArgs e){    MenuStrip ms = new MenuStrip();    ToolStripMenuItem tsmi = new ToolStripMenuItem("视图1");    ToolStripMenuItem tsmi1 = new ToolStripMenuItem("视图1-1");    ToolStripMenuItem tsmi11 = new ToolStripMenuItem("视图1-1-1");    ToolStripMenuItem tsmi12 = new ToolStripMenuItem("视图1-1-2");    tsmi1.DropDownItems.AddRange(new ToolStripItem[] { tsmi11, tsmi12 });    ToolStripMenuItem tsmi2 = new ToolStripMenuItem("视图1-2");    ToolStripMenuItem tsmi21 = new ToolStripMenuItem("视图1-2-1");    ToolStripMenuItem tsmi22 = new ToolStripMenuItem("视图1-2-2");    tsmi2.DropDownItems.AddRange(new ToolStripItem[] { tsmi21, tsmi22 });    tsmi.DropDownItems.AddRange(new ToolStripItem[] { tsmi1, tsmi2 });    ms.Items.Add(tsmi);    ms.Dock = DockStyle.Top;    Controls.Add(ms);    MainMenuStrip = ms;}
[解决办法]
- -!、、虽然我没有搞过菜单
但我真心觉得 在窗体设计的时候知道怎么搞 换成代码就不知道怎么搞 就是一个悲剧

如果 你不知道怎么搞 你可以去看看 你在设计窗体的时候 为窗体设计自动生成的代码看看也许 你就能知道点啥了

热点排行