上一篇中关于“TreeView树型结构问题”的问题,在调试运用过程中,在显示的时候很正常,可是在添加的时候就会有一定的复杂度,
比方说:我先增添了一组数据,然后删除了中间的几条,那么我再添加的时候这个就不能用了,要用哪个编号的话,就要返回数据库查询,很麻烦的,综合比较还是ID,NAME,PARENTID,好用
initree(0,nothing)
Private Sub initree(ByVal parentid As Int32, ByVal node As TreeNode)
If node Is Nothing Then
node = New TreeNode("中国")
TreeView1.Nodes.Add(node)
End If
Dim dv As DataView = ds.Tables("areas").DefaultView
dv.RowFilter = "a_pid='" & parentid & "'"
If dv.Count = 0 Then
Exit Sub
End If
Dim dvrow As DataRowView
Dim pnode As TreeNode
For Each dvrow In dv
pnode = New TreeNode
pnode.Text = dvrow("a_name")
pnode.Tag = dvrow("a_id")
node.Nodes.Add(pnode)
Next
For Each pnode In node.Nodes
initree(pnode.Tag, pnode)
Next
End Sub