使用Child_ID, Child_Name, Parent_ID, Parent_Name填充Treeview



大家好,

我从SQL Server导出一个表到Access数据库,从中我需要建立一个树视图和分配值给每个节点。我是使用vb.net处理树视图的新手。

表的结构是这样的

**Child_ID ChildName Parent_ID ParentName **

每个子对象都有一个父对象ID。有没有专家建议用上面的列来填充树视图?在此过程中,我想分配ChildName/ParentName作为TreeNode文本(displyName)和Child_ID/Parent_ID作为我想在另一个应用程序中使用的TreeNode标签。

提前感谢。

  RootName = "AppRootName" 
                            Dim root = New TreeNode(RootName)
                            MyTreeView.Nodes.Add(root)
                            MyTreeView.TopNode = root
                            For Each dbRow As DataRow In DTHier.Rows
                                ChildName = dbRow.Item(0).ToString()
                                ChildID = dbRow.Item(1).ToString().ToUpper  
                                ParentID = dbRow.Item(2).ToString().ToUpper
                                ParentName = dbRow.Item(3).ToString() 
                                Dim ParentNode = New TreeNode() With { _
                                   .Name = ParentName.ToString(), _
                                    .Text = ParentName, _
                                    .Tag = ParentID _
                               }
                                Dim ChildNode = New TreeNode() With { _
                                  .Name = ChildName.ToString(), _
                                   .Text = ChildName, _
                                   .Tag = ChildID _
                              }

                                MyTreeView.Nodes(0).Nodes.Add(ParentNode)
                                Dim NodeFound As Integer = MyTreeView.Nodes(0).Nodes.Find(ChildNode.Tag, True).Length
                                If NodeFound > 0 Then
                                    ParentNode.Nodes.Add(ChildNode)
                                End If

你可以试试:

  'Creating the root node
  ' Main Node - All Treeview MUST have at least ONE.
  Dim root = New TreeNode("Application")
  ' Add a node under it.
  TreeView1.Nodes.Add(root)
  TreeView1.Nodes(0).Nodes.Add(New TreeNode("First Child from Root"))
  'Creating child nodes under the first child
  For loopindex As Integer = 1 To 4
      TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode("Childs" & Str(loopindex)))
  Next loopindex
  ' creating child nodes under the root (0)
  TreeView1.Nodes(0).Nodes.Add(New TreeNode("Second Child from Root"))
  'creating child nodes under the created child node
  For loopindex As Integer = 1 To 3
      TreeView1.Nodes(0).Nodes(1).Nodes.Add(New TreeNode("Childs from Node 1 - " & Str(loopindex)))
  Next loopindex

最新更新