ผมต้องการเขียนโปรแกรมโชว์ Master แบบ Treeview ใน Vb 2015 นะครับ โดยจะมีการดึงข้อมูลจาก Table Master โดยใน Table มี Field ที่เเบ่ง Lavel 1- 4 ไว้อยู่เเล้วครับ
สิ่งที่ต้องการตามตัวอย่างครับ
นี้ที่ผมทำได้ออกมาเเค่ 1 Lavel คือ Lavel บนสุดครับ
Code Program ที่ผมได้พยายามเขียนตาม google ที่ค้นมาครับ
Private Sub FillTree()
Dim Rootnode As TreeNode = Nothing
Dim Mainnode As TreeNode = Nothing
Dim Childnode As TreeNode = Nothing
Dim Childnode1 As TreeNode = Nothing
Dim Childnode2 As TreeNode = Nothing
Dim MainName As String = String.Empty
' Dim cn As New SqlConnection(Conn)
' Dim adp As New SqlDataAdapter(SQLExpression, cn)
' strSQL = "SELECT ParentSite, ParentLocation, ParentComp FROM EMSm_EqumentMaster "
'strSQL = "SELECT ParentSite,ParentLocation,ParentComp,EqumentNo FROM EMSm_EqumentMaster "
'strSQL = "SELECT ParentSite FROM EMSm_EqumentMaster "
strSQL = "Select EqumentNo, EqumentDesc FROM EMSm_EqumentMaster WHERE EqumentLevel = 1 ORDER BY EqumentNo "
da = New SqlDataAdapter(strSQL, Conn)
da.Fill(ds, "EMSm_EqumentMaster")
'strSQL = "Select EqumentLevel, ParentSite, ParentLocation, ParentComp, EqumentNo From EMSm_EqumentMaster"
'da = New SqlDataAdapter(strSQL, Conn)
'da.Fill(ds, "EMSm_EqumentMaster")
TreeView1.Nodes.Clear()
Rootnode = TreeView1.Nodes.Add(key:="Root", text:="EMSm_EqumentMaster",
imageIndex:=0, selectedImageIndex:=0)
For Each row As DataRow In ds.Tables("EMSm_EqumentMaster").Rows
If MainName <> row(0).ToString Then
Mainnode = Rootnode.Nodes.Add(key:="EMSm_EqumentMaster", text:=row(0).ToString,
imageIndex:=1, selectedImageIndex:=1)
MainName = row(0).ToString
End If
'Childnode = Mainnode.Nodes.Add(key:="Column", text:=row(1).ToString, imageIndex:=2, selectedImageIndex:=2)
'Childnode1 = Childnode.Nodes.Add(key:="Column", text:=row(2).ToString, imageIndex:=3, selectedImageIndex:=3)
' Childnode2 = Childnode1.Nodes.Add(key:="Column", text:=row(3).ToString, imageIndex:=4, selectedImageIndex:=4)
'Next
Next
TreeView1.Nodes(0).EnsureVisible()
ds.Dispose()
ds = Nothing
da.Dispose()
da = Nothing
Conn.Dispose()
Conn = Nothing
End Sub
รบกวนเเนะนำด้วยครับ ขอบคุณมากครับ
สอบภามการเขียน Treeview ใน VB 2015 หน่อยครับ
สิ่งที่ต้องการตามตัวอย่างครับ
นี้ที่ผมทำได้ออกมาเเค่ 1 Lavel คือ Lavel บนสุดครับ
Code Program ที่ผมได้พยายามเขียนตาม google ที่ค้นมาครับ
Private Sub FillTree()
Dim Rootnode As TreeNode = Nothing
Dim Mainnode As TreeNode = Nothing
Dim Childnode As TreeNode = Nothing
Dim Childnode1 As TreeNode = Nothing
Dim Childnode2 As TreeNode = Nothing
Dim MainName As String = String.Empty
' Dim cn As New SqlConnection(Conn)
' Dim adp As New SqlDataAdapter(SQLExpression, cn)
' strSQL = "SELECT ParentSite, ParentLocation, ParentComp FROM EMSm_EqumentMaster "
'strSQL = "SELECT ParentSite,ParentLocation,ParentComp,EqumentNo FROM EMSm_EqumentMaster "
'strSQL = "SELECT ParentSite FROM EMSm_EqumentMaster "
strSQL = "Select EqumentNo, EqumentDesc FROM EMSm_EqumentMaster WHERE EqumentLevel = 1 ORDER BY EqumentNo "
da = New SqlDataAdapter(strSQL, Conn)
da.Fill(ds, "EMSm_EqumentMaster")
'strSQL = "Select EqumentLevel, ParentSite, ParentLocation, ParentComp, EqumentNo From EMSm_EqumentMaster"
'da = New SqlDataAdapter(strSQL, Conn)
'da.Fill(ds, "EMSm_EqumentMaster")
TreeView1.Nodes.Clear()
Rootnode = TreeView1.Nodes.Add(key:="Root", text:="EMSm_EqumentMaster",
imageIndex:=0, selectedImageIndex:=0)
For Each row As DataRow In ds.Tables("EMSm_EqumentMaster").Rows
If MainName <> row(0).ToString Then
Mainnode = Rootnode.Nodes.Add(key:="EMSm_EqumentMaster", text:=row(0).ToString,
imageIndex:=1, selectedImageIndex:=1)
MainName = row(0).ToString
End If
'Childnode = Mainnode.Nodes.Add(key:="Column", text:=row(1).ToString, imageIndex:=2, selectedImageIndex:=2)
'Childnode1 = Childnode.Nodes.Add(key:="Column", text:=row(2).ToString, imageIndex:=3, selectedImageIndex:=3)
' Childnode2 = Childnode1.Nodes.Add(key:="Column", text:=row(3).ToString, imageIndex:=4, selectedImageIndex:=4)
'Next
Next
TreeView1.Nodes(0).EnsureVisible()
ds.Dispose()
ds = Nothing
da.Dispose()
da = Nothing
Conn.Dispose()
Conn = Nothing
End Sub
รบกวนเเนะนำด้วยครับ ขอบคุณมากครับ