CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

Treeview控件带Checkbox的节点选中问题

楼主caijf(峰回路转)2004-12-01 00:07:36 在 .NET技术 / C# 提问

在treeview控件(带checkbox)中,我发现在AfterCheck事件中,如勾选中某节点,则该节点下所有子节点就全部被勾选中,如将该节点状态改为未选中,则其下所有子节点全部改为未选中。好像很难做到。在AfterSelect中可以做到,但是在AfterSelect中,必须要点击节点名称,而不能勾选节点前的checkbox。      
  哪位大侠有实现的源代码,请指教。或发e-mail:     zjjsaaa@163.com 问题点数:100、回复次数:3Top

1 楼dsclub(任搏软)回复于 2004-12-01 00:39:17 得分 1

自己遍历一下不行么?Top

2 楼dazhu2(【倚天不出,谁与争锋】)回复于 2004-12-01 01:32:40 得分 99

试一下:  
  private   void   tvw_AfterCheck(object   sender,   System.Windows.Forms.TreeViewEventArgs   e)  
  {  
   
  TreeNode   currentnode=e.Node;  
  if(currentnode.Checked==true)  
  {  
                                          checktvw(currentnode);  
   
  }  
  else  
  {  
   
  foreach(TreeNode   node1   in   currentnode.Nodes)  
  {  
  node1.Checked=false;  
   
  }  
  }  
   
   
  }  
   
  //递归方法  
  private   void   checktvw(TreeNode   node0)  
  {  
  foreach(TreeNode   m   in   node0.Nodes)  
  {  
  m.Checked=true;  
  this.tvw.ExpandAll();  
  if(m.Nodes.Count>0   &&   m.Checked==true)  
  {  
  foreach(TreeNode   n   in   m.Nodes)  
  {  
  checktvw(n);  
  }  
  }  
   
   
  }  
   
  }  
  Top

3 楼dazhu2(【倚天不出,谁与争锋】)回复于 2004-12-01 01:40:19 得分 0

其实不要递归也可以:  
  private   void   tvw_AfterCheck(object   sender,   System.Windows.Forms.TreeViewEventArgs   e)  
  {  
   
  TreeNode   currentnode=e.Node;  
  if(currentnode.Checked==true)  
  {  
                                          //checktvw(currentnode);  
  foreach(TreeNode   a   in   currentnode.Nodes)  
                    a.Checked=true;  
   
  }  
  else  
  {  
   
  foreach(TreeNode   node1   in   currentnode.Nodes)  
  {  
  node1.Checked=false;  
   
  }  
  }  
   
   
  }Top

相关问题

  • 怎样让Treeview控件节点前出现checkbox复选框?
  • 请问如何在treeview的节点中添加checkBox控件?
  • 删除treeview 控件节点
  • treeview 控件找父节点
  • 那里有节点有checkbox属性的TreeView控件可以下载?
  • treeview控件,增加节点问题!
  • 怎样在treeview控件的节点中间插入节点?
  • treeview控件中如何判断点击的是父节点,还是子节点
  • TreeView控件,已知节点A的KEY值,怎么删除这个节点A?
  • 在TreeView控件中,如何得到选中节点的父节点的值?

关键词

  • 节点
  • currentnode
  • checktvw
  • 选中
  • treenode
  • tvw
  • aftercheck
  • node
  • checkbox
  • foreach

得分解答快速导航

  • 帖主:caijf
  • dsclub
  • dazhu2

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo