本文介绍了检查菜单项的可见性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好!
在这里,我创建了一个代码来检查菜单项
私有 无效 formm_display_function(字符串 display_form_str) { foreach (ToolStripMenuItem menuItem in this ..menuStrip1 .项目) { 如果(menuItem.Text.Trim()== display_form_str){ menuItem.Visible = true ; break ; } }
在此代码中,只有第一个菜单正在检查
我有五个项目
display_form_str包含菜单中的一项
但是它只检查第一个菜单项.每次通过时都会命中该命令.确保封装了整个语句:
私有 void formm_display_function(字符串 display_form_str) { foreach (ToolStripMenuItem menuItem in this ..menuStrip1 .项目) { 如果(menuItem.Text.Trim()== display_form_str) { menuItem.Visible = true ; break ; } // <-添加以封装"break;"命令,以便仅在匹配时触发 } }
ToolStripMenuItems
是从ToolStripDropDownItem
派生的,因此,如果要比较的菜单项位于同一菜单下拉菜单中(意味着它们垂直显示),那么您拥有的是一个ToolStripMenuItem
包含另一个ToolStripMenuItems
.要访问这些文件,您需要遍历DropDownItems
属性中的ToolStripMenuItems
.
私有 void formm_display_function(字符串 display_form_str) { foreach (ToolStripMenuItem menuItem in this ..menuStrip1 .项目) { foreach (ToolstripMenuItem子项 in menuitem.DropDownItems) { 如果(subitem.Text.Trim()== display_form_str) { subitem.Visible = true ; break ; } } } }
[/EDIT]
Hi to all!
Here I create a code to check the menuitems
private void formm_display_function(string display_form_str) { foreach (ToolStripMenuItem menuItem in this.menuStrip1.Items) { if (menuItem.Text.Trim() == display_form_str){ menuItem.Visible = true; break; } }
In this code only the first menu is checking
I have five items
display_form_str contains one of the items from menu
but its checking only the first menu items
解决方案
这篇关于检查菜单项的可见性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!