怎样用递归检查menustrip中有多少个ToolStripMenuItem 1、怎样用递归检查menustrip中有多少个ToolStripMenuItem?可能多多级菜单(Winform中)?2、讲讲递归原理是怎样的? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个递归很简单 代码如下 经过测试的 private void button1_Click(object sender, EventArgs e) { foreach (ToolStripMenuItem item in menuStrip1.Items) { richTextBox1.Text += item.Name+"\n"; if (item.DropDownItems.Count > 0) { GetMenu(item); } } } void GetMenu(ToolStripMenuItem item) { foreach (ToolStripMenuItem i in item.DropDownItems) { richTextBox1.Text += i.Name + "\n"; if (i.DropDownItems.Count > 0) { GetMenu(i); } } } 递归算法就是自己调用自己的 比如上例中的 在绑定多层的树 经常要用递归void GetMenu(ToolStripMenuItem item) { foreach (ToolStripMenuItem i in item.DropDownItems) { richTextBox1.Text += i.Name + "\n"; if (i.DropDownItems.Count > 0) { GetMenu(i); //调用自身 } } } 谢谢,因为菜单中也有ToolStripSeparator,但是在上面的方法中执行提示无法将ToolStripMenuItem转化为ToolStripSeparator,怎样怎样修改下? 「学一学」C# 快速入门(Aisha Ikram著,野比 译) OnClientClick=“” 返回值为false,为什么还能提交? 怎样等浏览器加载完后才返回值 求PDF在网页里显示的代码(c#.net) 如何禁止word中的鼠标右键显示的菜单? 冰天雪地跪地求教 数据保存后,产生重复数据记录 各位大虾,如何实现这样的功能? 程序集的问题 在线程中怎样启动一个带参数的函数? 在ToolStripStatusLabel上显示程序运行时间。 高手来解决问题?问: System.IO.DirectoryNotFoundException: 未能找到路径“D:\”的一部分。
{
foreach (ToolStripMenuItem item in menuStrip1.Items)
{
richTextBox1.Text += item.Name+"\n";
if (item.DropDownItems.Count > 0)
{
GetMenu(item);
}
}
} void GetMenu(ToolStripMenuItem item)
{
foreach (ToolStripMenuItem i in item.DropDownItems)
{
richTextBox1.Text += i.Name + "\n";
if (i.DropDownItems.Count > 0)
{
GetMenu(i);
}
}
}
{
foreach (ToolStripMenuItem i in item.DropDownItems)
{
richTextBox1.Text += i.Name + "\n";
if (i.DropDownItems.Count > 0)
{
GetMenu(i); //调用自身
}
}
}