Rom*_*omz 25 c# treeview treenode winforms
像这样:
TreeNode[] treeNodes = treeView.Nodes.Find(searchString, true);
Run Code Online (Sandbox Code Playgroud)
但我希望它在text现场搜索而不是name字段.
Hab*_*bib 39
我不知道任何内置方法,但您可以使用LINQ
TreeNode[] treeNodes = treeView.Nodes
.Cast<TreeNode>()
.Where(r => r.Text == "yourText")
.ToArray();
Run Code Online (Sandbox Code Playgroud)
L.B*_*L.B 26
要搜索所有树节点(不仅是直接子节点),您可以使用下面的扩展方法
var nodes = treeView1.FlattenTree()
.Where(n => n.Text == "sometext")
.ToList();
Run Code Online (Sandbox Code Playgroud)
-
public static class SOExtension
{
public static IEnumerable<TreeNode> FlattenTree(this TreeView tv)
{
return FlattenTree(tv.Nodes);
}
public static IEnumerable<TreeNode> FlattenTree(this TreeNodeCollection coll)
{
return coll.Cast<TreeNode>()
.Concat(coll.Cast<TreeNode>()
.SelectMany(x => FlattenTree(x.Nodes)));
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
44603 次 |
| 最近记录: |