我有一个System.Windows.Forms.TreeView
控件,我想关闭特定子TreeNode对象的加号/减号。我知道我可以使用TreeView.ShowPlusMinus
属性在整个TreeView级别执行此操作,但是我想知道是否可以隐藏所选TreeNode对象的符号。关闭特定TreeView节点上的加号/减号
1
A
回答
1
可惜的是,Windows窗体TreeView类包装的原生tree view control,和该控件仅支持全局显示或隐藏加号/减号。
这是因为在内部,该标志映射到TVS_HASBUTTONS控制风格,这当然会影响整个控件而不是单个项目。
据我所知,达到目标的唯一方法是处理DrawNode事件和render everything yourself。
0
此基础上您的编辑,你应该重写你的TreeView的BeforeCollapse事件取消崩溃,如果它是一个非可折叠的节点:
private void treeView1_BeforeCollapse(object sender, TreeViewCancelEventArgs e) {
MyParameter myP = e.Node.Tag as MyParameter;
if (myP != null) {
if (myP.Type == MyParameterType.NonCollapsible) {
e.Cancel = true;
}
}
}
0
每个TreeViewItem(TVITEM)都有一个cChildren成员。 如果0,则隐藏plusminus标志。如果是1,则显示+号。
见 http://msdn.microsoft.com/en-us/library/windows/desktop/bb773456%28v=vs.85%29.aspx
不要忘记TVIF_CHILDREN标志。
我回答,因为我搜索了同样的问题,没有找到答案。
相关问题
- 1. 如何显示儿童节点的加号和减号?
- 2. 使用TreeView的加号和减号图标
- 3. 如何用分号处理TreeView节点;
- 4. 关于Flink上的节点号
- 5. 加号和减号
- 6. 在Treeview节点上绑定Gridview点击
- 7. gnuplot中的加号/减号符号?
- 8. 在C#treeview中展开特定节点的所有父节点
- 9. 如何获取KendoUI treeView中特定节点的节点值?
- 10. 获取减号或加号
- 11. Regex.Split加号和减号
- 12. 添加节点号在MATLAB
- 13. 如何在自举中为手风琴添加加号或减号?当手风琴关闭时显示加,减去手风琴开启时的减号
- 14. 将子节点添加到VB中的TreeView上的Childe节点
- 15. Jquery加号和减号符号切换
- 16. 暗号的节点和关系
- 17. 添加相对于TreeView选定节点的新节点
- 18. 如何将节点添加到TreeView中的选定节点?
- 19. 需要treeview没有虚线在jquery中加号和减号之间
- 20. Accordion的加号/减号 - ID或数组?
- 21. 对Treeview控件的节点数进行编号
- 22. 自动省略号属性vc#中的treeview节点
- 23. 按钮点击增加/减小字号
- 24. MVVM with TreeView - 添加节点
- 25. Jquery TreeView添加节点
- 26. Treeview添加重复节点
- 27. qt qstring toStdString减号减号
- 28. 如何拒绝/关闭特定的来电号码
- 29. emacs evil-mode:关闭特定模式下的行号
- 30. TreeView自定义节点
你的意思是**没有**删除节点? – jp2code
@ jp2code:通过从Web服务读取数据动态加载节点。在每个节点加载到树中之前,我想检查它是否应该是不可折叠的节点,在这种情况下,我希望禁用加号/减号(另外我也会将节点放入扩展模式并禁用常规双击展开/折叠行为)。节点添加到树后,我不需要再次调整加/减。 – Abiel