【发布时间】:2014-06-18 15:35:58
【问题描述】:
我的问题如下。我需要得到TreeNode 的Index,但我只知道这个Node 的名称。你有什么想法,我怎样才能得到这个属性?
我也想要一样的东西:
int treeIndex = treeView1.Nodes["myNode"].Index;
如果可能,请给我一个示例代码。
【问题讨论】:
标签: c# winforms treeview treenode
我的问题如下。我需要得到TreeNode 的Index,但我只知道这个Node 的名称。你有什么想法,我怎样才能得到这个属性?
我也想要一样的东西:
int treeIndex = treeView1.Nodes["myNode"].Index;
如果可能,请给我一个示例代码。
【问题讨论】:
标签: c# winforms treeview treenode
你可以这样做,
var result = treeView1.Nodes.OfType<TreeNode>()
.FirstOrDefault(node => node.Name.Equals("name"));
然后访问 Result 中的索引。
【讨论】:
您可以定义自定义树类。
使用Indexers的示例:
public class MyTreeView : TreeView
{
public int this[string nodeName] {
var found = this.Nodes.FirstOrDefault(n=>n.Text == nodeName);
return (found == null)?-1:found.Index;
}
}
然后像这样使用:
var tree = new MyTreeView();
...
...
var coolNodeIndex = tree["MyCoolNode"].Index;
【讨论】: