如何清除 TreeView 中选定节点的选择? [关闭]

Posted

技术标签:

【中文标题】如何清除 TreeView 中选定节点的选择? [关闭]【英文标题】:How do I clear the selection of a selected node in a TreeView? [closed] 【发布时间】:2012-08-06 07:55:44 【问题描述】:

如何取消选择节点(在选择事件之后)?

【问题讨论】:

试试 myTree.SelectedNode = null 我正在尝试 IsSelected,但只有得到...无论如何谢谢。 试试这个 treeview.SelectedNode.Selected = false; 只要 TreeView 保持焦点,当 TreeView.SelectedNode 属性设置为 'null 时,WinForms TreeView 不会更改突出显示的节点。而且,WinForm TreeView 'IsSelected 属性是只读的:没有 'Selected 属性。 只要 TreeView 保持焦点,当 TreeView.SelectedNode 属性设置为 'null 时 WinForms TreeView 将不会更改突出显示的 Node 错误。 【参考方案1】:

当你遇到这样的问题(处理你需要使用什么api)你应该咨询MSDN,然后弄清楚。

现在,请参阅 msdn 上的 TreeView 页面。它有一个Selectednode 属性,上面写着:

如果当前没有选择 TreeNode,则 SelectedNode 属性为 null。

此外,它还有一个 gettersetter。所以我最好的选择是:

myTreeView.SelectedNode = null;//will deselect it

【讨论】:

大声笑 :) 不是吗?!问题是我见过不少人面临着理解 API 必须随着时间的推移和文档而学习的挑战。其他人都是这样做的! 诚然,提问是学习过程的一部分——它不应该被嘲笑——但我通常会等到我用尽了其他途径——比如文档。 我已经尝试过 adobe 示例,但我遇到了一个错误:'SelectedNode 不能分配给---它是只读的 prperty'。我通过像 MyTreeView.SelectedNode.Selected = false 一样正确设置它来实现它; @JatinderSharma 文档说得很清楚:public TreeNode SelectedNode get; set; 。所以你也许应该仔细检查框架、版本等。可能你在谈论 WPF 而这个问题是关于 windows 窗体的。 仅供参考:在 WinForms TreeView SelectedNode = null;只要 TreeView 保持焦点,就不会改变高亮节点的外观;并且,'IsSelectred 属性是只读的:没有 'Selected 属性。

以上是关于如何清除 TreeView 中选定节点的选择? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在C#中从Treeview的选定节点获取下一个直接节点?

如何使用 MVVM 模式在 TreeView 中获取选定节点而不使用代码隐藏? [复制]

delphi TreeView 鼠标右击选择节点

如何在TreeView中选中他的节点时,更改节点的背景颜色?

delphi中的treeview控件如何取到选择节点的索引号?

Winform中Treeview控件失去焦点,如何将选择的节点还设置为高亮显示?