最新装修风格2021图片,重庆网站优化服务,做饮品的网站,360开户推广用过asp.net的应该知道#xff0c;要在treeview中实现上述功能可以使用ShowCheckBox 属性指定那些节点显示checkbox哪些不显示,可是winform中的treeview只提供一个ShowCheckBoxes 属性#xff0c;要么全部节点显示checkbox#xff0c;要不全部不显示#xff0c;而指定节点没…用过asp.net的应该知道要在treeview中实现上述功能可以使用ShowCheckBox 属性指定那些节点显示checkbox哪些不显示,可是winform中的treeview只提供一个ShowCheckBoxes 属性要么全部节点显示checkbox要不全部不显示而指定节点没有ShowCheckBox 属性下面就在winform的treeview中实现BS对应CheckBox 属性的功能 a) 将TreeView的CheckBoxs属性设为false b) 将TreeView的StateImageList属性关联一个imagelist组件里面添加checkbox勾选图片和未勾选图片 c) 添加TreeView的NodeMouseClick事件在事件中使用e.Node.StateImageIndex属性切换显示的图片根据索引切换,可以创建一个泛型集合,比如Liststring,用于存放已打钩的节点项从而方便切换打钩图片索引和未打钩图片索引 d) 缺点 点击树节点所在行的任何位置都会触发NodeMouseClick事件,因为无法触发treeView1_AfterCheck和treeView1_NodeMouseClick事件所以只能用NodeMouseClick事件 e) 原理 winform中treeview的checkbox项其实是使用图片显示的,选中是打钩的图片未选中是未打钩的图片关联的是StateImageList属性(默认为空使用自带的图片)。所以如果要实现指定treenode显示checkbox其它treenode不显示checkbox就需要使用TreeNode的StateImageList属性 需要注意StateImageList的图标是16*16.不会改变。所以ImageList的图片需要符合这个规格。转载于:https://www.cnblogs.com/colder/archive/2013/02/27/2935545.html