vb.net 遍历treeview查找a(0)在结点或子节点的.text属性是否重复存在

vb.net遍历treeview查找a(0)在结点或子节点的.text属性是否重复存在如果存在则把a(1)添加到查到的节点下如果不存在则添加一个新的子节点... vb.net 遍历treeview查找a(0)在结点或子节点的.text属性是否重复存在如果存在则把a(1)添加到查到的节点下如果不存在则添加一个新的子节点 展开
 我来答
xiansr
2012-01-26 · TA获得超过278个赞
知道小有建树答主
回答量:313
采纳率:100%
帮助的人:263万
展开全部
要用递归的方法才行,首先构建一个带有treeview1和button1的基本窗体,在treeview1中添加一些节点,保持默认的名字即可。程序将搜寻节点带有j"节点1"的节点,包括节点10,节点11....,然后按照你的要求添加新节点。代码如下:
Public Class Form1
Dim a() As String = {"节点1", "a(1)节点"}
Dim mnodes As New ArrayList
Dim cnodes As TreeNode

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
get_n(TreeView1.Nodes)
For Each ntxt As TreeNode In mnodes
If ntxt.Text.IndexOf(a(0)) >= 0 Then
ntxt.Nodes.Add(New TreeNode(a(1)))
Else
ntxt.Nodes.Add(New TreeNode("新节点"))
End If
Next
End Sub

Private Sub get_n(ByVal cn As TreeNodeCollection)
For Each ma As TreeNode In cn
If ma.Nodes.Count > 0 Then
mnodes.Add(ma)
cnodes = ma
get_n(cnodes.Nodes)
Else
mnodes.Add(ma)
End If
Next
End Sub
End Class
更多追问追答
追问
您好 再问一下我的a()是动态的 不是静态的也就是说我的子节点是动态添加的 不知您那里的Dim a() As String = {"节点1", "a(1)节点"}我应该怎么写?
追答
mnodes 是所有节点的一个集,cnodes表示当前正在递归搜寻的节点
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式