我试图遍历DevExpress.XtraTreeList.TreeList的节点,但它不起作用。
基本上,我所拥有的就是我想要查找的节点的标题和值。有没有简单的方法可以找到它。在找到它之后,我只是将焦点移到新的节点上,如果我有合适的索引,我已经知道如何做了。
谢谢
发布于 2010-09-16 22:13:22
我最终使用了Queue,然后使用当前节点的tree.nodes遍历了TreeList。
Dim text As String = "looking for this"
Dim myQueue As New Queue
For i As Integer = 0 To tree.Nodes.Count - 1
If tree.Nodes(i).GetDisplayText("name").Equals(text ) Then
tree.SetFocusedNode(tree.Nodes(i))
Exit Sub
Else
If tree.Nodes(i).HasChildren Then
myQueue.Enqueue(tree.Nodes(i))
End If
End If
Next
While myQueue.Count > 0
Dim tempNode As DevExpress.XtraTreeList.Nodes.TreeListNode = CType(myQueue.Dequeue, DevExpress.XtraTreeList.Nodes.TreeListNode)
For i As Integer = 0 To tempNode.Nodes.Count - 1
If tempNode.Nodes(i).GetDisplayText("name").Equals(e.Button.Caption) Then
tree.SetFocusedNode(tempNode.Nodes(i))
Exit Sub
Else
If tempNode.Nodes(i).HasChildren Then
myQueue.Enqueue(tempNode.Nodes(i))
End If
End If
Next
End While发布于 2010-09-15 23:08:50
这样的任务应该使用节点迭代器来实现。请参考此example
在这方面。我们的文档中描述了NodesIterator:
NodesIterator
https://stackoverflow.com/questions/3713295
复制相似问题