需求分析: 数据菜单有四级菜单,需要在程序界面登录的时候遍历菜单的内容

开发环境:VS C# winform

步骤1:新建一个窗体

步骤2:新建一个MenuStrip,并且定义内部的名称

步骤3:新建一个Treeview

步骤4:开始编程,定义一个参数函数: GetMenu(TreeView  V,MenuStrip  S)

步骤5:编写参数函数的代码

 public void GetMenu(TreeView treeV, MenuStrip MenuS){for (int i = 0; i < MenuS.Items.Count; i++)  //遍历MenuStrip组件中的一级菜单项{//将一级菜单项的名称添加到TreeView组件的根节点中,并设置当前节点的子节点newNode1TreeNode newNode1 = treeV.Nodes.Add(MenuS.Items[i].Text);//将当前菜单项的所有相关信息存入到ToolStripDropDownItem对象中ToolStripDropDownItem newmenu = (ToolStripDropDownItem)MenuS.Items[i];//判断当前一级菜单项中是否有二级菜单项if (newmenu.HasDropDownItems && newmenu.DropDownItems.Count > 0)for (int j = 0; j < newmenu.DropDownItems.Count; j++)    //遍历二级菜单项{//将二级菜单名称添加到TreeView组件的子节点newNode1中,并设置当前节点的子节点newNode2TreeNode newNode2 = newNode1.Nodes.Add(newmenu.DropDownItems[j].Text);//将当前菜单项的所有相关信息存入到ToolStripDropDownItem对象中ToolStripDropDownItem newmenu2 = (ToolStripDropDownItem)newmenu.DropDownItems[j];//判断二级菜单项中是否有三级菜单项if (newmenu2.HasDropDownItems && newmenu2.DropDownItems.Count > 0)for (int p = 0; p < newmenu2.DropDownItems.Count; p++)    //遍历三级菜单项{//将三级菜单名称添加到TreeView组件的子节点newNode2中,并设置当前节点的子节点newNode3TreeNode newNode3 = newNode2.Nodes.Add(newmenu2.DropDownItems[p].Text);//将当前菜单项的所有相关信息存入到ToolStripDropDownItem对象中ToolStripDropDownItem newmenu3 = (ToolStripDropDownItem)newmenu2.DropDownItems[p];//判断是否存在四级菜单if (newmenu3.HasDropDownItems && newmenu3.DropDownItems.Count > 0)for (int q = 0; q < newmenu3.DropDownItems.Count; q++)    //遍历四级菜单项//将四级菜单名称添加到TreeView组件的子节点newNode2中newNode3.Nodes.Add(newmenu3.DropDownItems[q].Text);}}}}

C# treeview 如何遍历MenuStrip的菜单相关推荐

  1. tinymce 工具栏 不显示_winform中MenuStrip主菜单、工具栏、状态栏、托盘、其他控件...

    MenuStrip主菜单 如果要写某个菜单的事件就双击那个菜单即可.设置热键 符号要加上&这个符号,快捷键shortcutkeys选择快捷键,快速选择菜单可以插入标准项,主菜单和工具栏都有这个 ...

  2. MenuStrip(主菜单)、ContextMenuStrip(右键菜单)的即时状态的获取方法

    1.如何正确的显示MenuStrip某一菜单下面的复制.剪切.粘贴菜单项的即时状态: private void mi_Edit_DropDownOpened(object sender, EventA ...

  3. C#遍历ContextMenuStrip右键菜单中包含子菜单的所有菜单并添加事件

    今天写程序的时候,用到了右键菜单控件ContextMenuStrip,真的很方便,写了几个菜单与子菜单项,本来是可以用双击来给每一个菜单添加事件的,不过,这样做似乎非常麻烦,而且对一些子菜单也不容易控 ...

  4. Excel催化剂开源第12波-VSTO开发遍历功能区所有菜单按钮及自定义函数清单

    在插件开发过程中,随着功能越来越多,用户找寻功能入口将变得越来越困难,在Excel催化剂 ,将采用遍历所有功能的方式,让用户可以轻松使用简单的查找功能找到想要功能所在位置,查找的范围有:功能按钮的显示 ...

  5. Winform UI界面设计例程——TreeView控件

    今天我们来探讨下treeView的使用 treeView控件是树形菜单,非常易于展示层次结构和对其进行导航,我们电脑的资源管理器就是使用了treeView控件进行目录和磁盘的导航. TreeView控 ...

  6. bootstrap菜单展开收起_菜单展开及收缩效果 bootstrap+jquery

    //左侧菜单 Jquery slideUp/slideDown var leftmenu = $(function() { $(".mymenu").click(function( ...

  7. 2017-4-26 winform 菜单和工具栏

    如何让radiobutton进行分组: 用Panel    相当于div 菜单和工具栏: MenuStrip(菜单条) ShortcutKeys-------------------------与菜单 ...

  8. matlab treeview,treeview控件

    高分在线等:C#中如何给treeview控件上的节点前添比如有一treeview1控件,需要在其所有节点前均加一静态小图标(所有节点我也新手,正好刚用过这功能.如下: 1. 到工具箱中拖一个image ...

  9. Struts2使用OGNL遍历各种map总结

    一.Action中的代码:MapAction.java package com.zx.demo.action; import java.util.ArrayList;   import java.ut ...

最新文章

  1. element ui只输入数字校验
  2. 每日一篇——Fed Unveils Major Expansion of Market Intervention
  3. 数据库的内连接和外连接区别?
  4. 软件项目管理0720:读一页项目管理-项目子目标
  5. 管理任务执行-如何制定有效的机制
  6. 3.2 神经网络表示
  7. VIMrc 配置文件
  8. input输入框提示
  9. 发那科机器人圆弧指令怎么用_发那科机器人的指令如何编辑
  10. Mybatis 中文文档
  11. Nacos注册中心AP架构源码(Distro)上篇
  12. 计算机术语CPI是什么意思,鼠标上的cpi什么意思?鼠标知识科普
  13. 视频教程-数据结构实战完全手册-C/C++
  14. Uniapp|Vue-汉字转拼音|获取汉字的首字母js实现
  15. IDEA 使用SequenceDiagram插件绘制时序图
  16. 32个c语言关键字发音,加注汉语发音的C语言32个语句和9种控制语
  17. 手机摄影-参数(光圈)
  18. js中break和continue的区别
  19. 在谷歌浏览器上面安装AxueRP插件。
  20. PCB多种特殊走线画法与技巧

热门文章

  1. 清除bloodhound.w32.ep病毒
  2. 抽屉远离在计算机的应用,中学趣味数学:抽屉原理与电脑算命
  3. krb5安装包 linux_【RedHat Linux】kerberos 客户端配置
  4. 为什么中国商标在海外被频繁抢注
  5. Linux安装supervisor:一个进程控制系统
  6. windows文件夹同步
  7. 如何证明向量的叉积公式?
  8. java rotate,Java Collections rotate()方法与示例
  9. 三天打鱼两天晒网(C语言)
  10. vue-cli 脚手架基于Nightwatch的端到端测试环境的过程