Winform中树形菜单选择问题

yanyang_1015 2013-05-22 01:52:02

这是我动态从数据库上来的数据,请问我在点击“所有权限”的时候怎样让所有节点都勾选,相反也是。
在勾选某一个父节点时也让下面的子节点都勾选。
...全文
197 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
df398286232 2013-05-23
  • 打赏
  • 举报
回复
引用 4 楼 yanyang_1015 的回复:
在请问一下,这是我获取值的代码,但是没有设置成功,大神们帮我修改一下嘛 谢谢
大家说的已经很清楚了,递归遍历。 你这个方法找到了树,根本没去找树中的节点
 
            if (con is TreeView)
            {
                TreeView tvTemp = con as TreeView;
                foreach (TreeNode node in tvTemp.Nodes)
                {
                    //递归处理节点信息                    
                }
            }
再添加递归处理方法,以TreeNode作为参数,遍历所有子节点。 在递归方法中处理节点信息……
灬浪子灬 2013-05-23
  • 打赏
  • 举报
回复
引用 2 楼 Chinajiyong 的回复:
递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
+1
yanyang_1015 2013-05-23
  • 打赏
  • 举报
回复
还有没有人知道怎么做啊
yyantifa 2013-05-22
  • 打赏
  • 举报
回复
引用 10 楼 yanyang_1015 的回复:
[quote=引用 6 楼 yyantifa 的回复:] [quote=引用 5 楼 yanyang_1015 的回复:] [quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?[/quote] 如果我选择全部,勾选所有权限,在设置的时候怎样把“所有权限”排除掉不添加这一项呢。[/quote] 递归,判断哪里节点checked了,判断是哪些节点是不需要的.
removeLove 2013-05-22
  • 打赏
  • 举报
回复
引用 8 楼 yanyang_1015 的回复:
[quote=引用 7 楼 removeLove 的回复:] [quote=引用 6 楼 yyantifa 的回复:] [quote=引用 5 楼 yanyang_1015 的回复:] [quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?[/quote] 就是啊,你创建一个势力TreeNode对象后,不要用if判断了 直接让他checked为true,然后添加到上一级的节点下[/quote] 怎样添加到上级节点哦??[/quote] 你首先能获取到点击的节点 treeView1.SelectedNode 这是你点击的节点 treeView1.SelectedNode。nodes 这是点击节点下的节点集合 然后循环这个集合又能获取到下面的节点啦~
yanyang_1015 2013-05-22
  • 打赏
  • 举报
回复
引用 6 楼 yyantifa 的回复:
[quote=引用 5 楼 yanyang_1015 的回复:] [quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?[/quote] 如果我选择全部,勾选所有权限,在设置的时候怎样把“所有权限”排除掉不添加这一项呢。
yanyang_1015 2013-05-22
  • 打赏
  • 举报
回复
引用 6 楼 yyantifa 的回复:
[quote=引用 5 楼 yanyang_1015 的回复:] [quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?[/quote] 就是不知道怎样转换的嘛
yanyang_1015 2013-05-22
  • 打赏
  • 举报
回复
引用 7 楼 removeLove 的回复:
[quote=引用 6 楼 yyantifa 的回复:] [quote=引用 5 楼 yanyang_1015 的回复:] [quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?[/quote] 就是啊,你创建一个势力TreeNode对象后,不要用if判断了 直接让他checked为true,然后添加到上一级的节点下[/quote] 怎样添加到上级节点哦??
removeLove 2013-05-22
  • 打赏
  • 举报
回复
引用 6 楼 yyantifa 的回复:
[quote=引用 5 楼 yanyang_1015 的回复:] [quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?[/quote] 就是啊,你创建一个势力TreeNode对象后,不要用if判断了 直接让他checked为true,然后添加到上一级的节点下
yyantifa 2013-05-22
  • 打赏
  • 举报
回复
引用 5 楼 yanyang_1015 的回复:
[quote=引用 2 楼 Chinajiyong 的回复:] 递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛 [/quote] foreach后,找到treeview这个控件,实例化一个treenode这个对象,这个对象肯定是null,rv.checked有什么用?
yanyang_1015 2013-05-22
  • 打赏
  • 举报
回复
引用 2 楼 Chinajiyong 的回复:
递归, 参考http://blog.csdn.net/maji9370/article/details/4293276
谢谢,在帮我看看上面的问题嘛
yanyang_1015 2013-05-22
  • 打赏
  • 举报
回复

在请问一下,这是我获取值的代码,但是没有设置成功,大神们帮我修改一下嘛

谢谢
removeLove 2013-05-22
  • 打赏
  • 举报
回复
获取当前节点信息,然后递归勾去下面的子节点nodes
EnForGrass 2013-05-22
  • 打赏
  • 举报
回复
yyantifa 2013-05-22
  • 打赏
  • 举报
回复
遍历,递归..

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧