如何控制.Net Forms.TreeView中的复选框?

时间:2008-09-02 09:46:17

标签: .net winforms treeview treenode

我有一个.Net桌面应用程序,其中TreeView作为UI元素之一。

我希望能够多选那个TreeView,但根本不支持。

所以我在树上添加了复选框,我的问题是只有一些项是可选择的,而那些不能一致的级联选择。

在显示其他复选框时是否有办法禁用或隐藏某些复选框?

3 个答案:

答案 0 :(得分:4)

TreeView的默认行为是,当Checkboxes属性设置为true时,将显示所有TreeNode的复选框。

您正在寻找的行为 - 禁用或隐藏某些复选框 - 是对正常行为的自定义修改。您可以创建覆盖默认行为的TreeView或TreeNode的自定义实现。另一件要尝试的是使用TreeView。StateImageList属性。有些网站需要了解更多信息:

答案 1 :(得分:1)

我最近写的一个编辑器中有一个非常类似的问题。最后,我使用TreeNode的{​​{1}}属性来确定节点的选择状态。然后,我为BackColor事件编写了一个处理程序,该事件检查了Shift / Control键的状态,以确定所选节点是在向选择中添加/删除还是创建新选择。当前还选择了SelectionChanged个节点来消除任何树搜索。

答案 2 :(得分:0)

MultiSelectTreeView

  

为什么.NET没有多选树视图?它有很多用途,在树视图中打开复选框是一个非常糟糕的选择。