【问题标题】:How do I clear the selection of a selected node in a TreeView? [closed]如何清除 TreeView 中选定节点的选择? [关闭]
【发布时间】: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 错误。

标签: c# winforms


【解决方案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 属性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-30
  • 1970-01-01
相关资源
最近更新 更多