Filling a treeview from mysql

layla

Member
Joined
Apr 26, 2005
Messages
21
Programming Experience
Beginner
I am trying to fill a treeview in vb.net from a mysql database. I want to have 3 levels, i.e. parent, child and grandchild!

My code connects to the mysql database with no problem and reads the parent name into the correct place in the treeview and also the grandchild, BUT the child (middle node) is just a number in the treeview taken from the relation database. I have highlighted the part i think is the problem. It does not read the name. HELP!

Here is my code:


Dim db As DataSet





Dim test As New OdbcConnection("")



Dim relation2 As New OdbcDataAdapter("SELECT parent_id, child_id, gene_id FROM relation2", test)

Dim parent As New OdbcDataAdapter("SELECT id, name FROM parent", test)

Dim child As New OdbcDataAdapter("SELECT id, names, GO_number FROM child", test)

Dim gene As New OdbcDataAdapter("SELECT id, HUGO FROM gene ", test)





db = New DataSet





test.Open()



relation2.Fill(db, "relation2")

parent.Fill(db, "parent")

child.Fill(db, "child")

gene.Fill(db, "gene")



test.Close()



db.Relations.Add("ParentToRelation2", db.Tables("parent").Columns("id"), db.Tables("relation2").Columns("parent_id"))

db.Relations.Add("Relation2ToChild", db.Tables("relation2").Columns("child_id"), db.Tables("child").Columns("id"))

db.Relations.Add("Relation2Togene", db.Tables("relation2").Columns("gene_id"), db.Tables("gene").Columns("id"))



'''''''''''''''''''''''



TreeView2.Nodes.Clear()

Dim i, n As Integer

Dim parentrow As DataRow

Dim ParentTable As DataTable

Dim ChildTable As DataTable

Dim Y As DataRow

Dim ChildTableRows As DataTable



ParentTable = db.Tables("parent")

'relation2.tables? "parentToRelation2"

For Each parentrow In ParentTable.Rows

Dim parentnode As TreeNode

parentnode = New TreeNode(parentrow.Item(1))

TreeView2.Nodes.Add(parentnode)

''''populate child'''''

'''''''''''''''''''''''

Dim childrow As DataRow



Dim childnode As TreeNode

childnode = New TreeNode

' This is looking at the parent table

For Each childrow In parentrow.GetChildRows("ParentToRelation2")



childnode = parentnode.Nodes.Add(childrow(1) & "(" & childrow(0) & ")")



childnode.Tag = childrow("child_id")

''''populate child2''''

''''''''''''''''''''''''''





Dim childrow2 As DataRow

Dim childnode2 As TreeNode

childnode2 = New TreeNode



For Each childrow2 In childrow.GetChildRows("Relation2Togene")



childnode2 = childnode.Nodes.Add(childrow2("HUGO"))



Next childrow2

''''''''''''''''''''''''





Next childrow

'''''''''''''''

Next parentrow





End Sub



Thankyou for your help in advance
 
Back
Top