Ask*_*mov 1 telerik radtreeview
我有一个RadTreeView C#组件.树是嵌套的,因此一些节点具有其子树,存储在上层节点的Nodes属性中.
现在我需要按值找到一个节点.节点隐藏在子树的某个地方.如果我使用电话
RadTreeNode rtn= PagesTreeView.Nodes.FindNodeByValue(i.ToString());
Run Code Online (Sandbox Code Playgroud)
其中PagesTreeView是我的树,然后它只搜索顶级节点.
我如何使用Value来查找节点,不仅使用当前树级的节点,而且还可以使用子树?我是否需要自己编写这样的递归搜索,或者有一个简单的解决方案?
没有内置函数来递归搜索,但是你可以自己动手.这应该适合你(未经测试):
RadTreeNode FindNodeRecursive(RadTreeNodeCollection nodes, string value)
{
foreach (RadTreeNode node in nodes)
{
if(node.Value == value)
return node;
if (node.Nodes.Count > 0)
{
FindNodeRecursive(node.Nodes, value);
}
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
然后像这样调用它:
var node = FindNodeRecursive(PagesTreeView.Nodes, i.ToString());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3968 次 |
| 最近记录: |