| code ใน VB.NET
 เกี่ยวกับ Tree กับ Data Grid กับ Combo Box
 
 Option Strict On
 Option Explicit On
 Imports System
 Imports System.Data.SqlClient
 Public Class frmtree
 
 Private Sub frmtree_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 Call loaddata()
 Call addcoltocombo()
 Call adddatatotree()
 
 End Sub
 Private Sub loaddata()
 Dim mycmd As New SqlCommand
 mycmd = fnccmddspcust()
 mydataset = f11(mydataset, mycmd, mytables.customers)
 
 End Sub
 Private Sub addcoltocombo()
 For Each myrow As DataColumn In mydataset.Tables(mytables.customers).Columns
 cbcolumn.Items.Add(myrow.ColumnName)
 Next
 End Sub
 Private Sub adddatatotree()
 Dim mynode As New TreeNode
 For Each myrow As DataRow In mydataset.Tables(mytables.customers).Rows
 mynode = trvcustomers.Nodes.Add(myrow("customerid").ToString)
 Call addorder(mynode, myrow("customerid").ToString)
 Next
 End Sub
 Private Sub addorder(ByVal p1 As TreeNode, ByVal p2 As String)
 Dim mycmd As New SqlCommand
 mycmd = fnccmdlistorders(p2, CommandType.Text)
 mydataset = f11(mydataset, mycmd, mytables.orders)
 For Each myrow As DataRow In mydataset.Tables(mytables.orders).Rows
 Dim mynode As TreeNode = Nothing
 mynode = p1.Nodes.Add(myrow("orderid").ToString)
 Next
 End Sub
 Private Sub addorderdetail(ByVal p1 As TreeNode, ByVal p2 As Integer)
 Dim mycmd As New SqlCommand
 mycmd = fnccmdlistorderdetails(p2, CommandType.StoredProcedure)
 mydataset = f11(mydataset, mycmd, mytables.orders)
 For Each myrow As DataRow In mydataset.Tables(mytables.orders).Rows
 Dim mynode As TreeNode = Nothing
 mynode = p1.Nodes.Add(myrow("orderid").ToString)
 Next
 End Sub
 
 Private Sub trvcustomers_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles trvcustomers.AfterSelect
 Dim myorderid As Integer = CType(e.Node.Text, Integer)
 Dim mycmd As New SqlCommand
 Dim mybindingsource As New BindingSource
 mycmd = fnccmdlistorderdetails(myorderid, CommandType.StoredProcedure)
 mydataset = f11(mydataset, mycmd, mytables.orderdetails)
 mybindingsource.DataSource = mydataset.Tables(mytables.orderdetails)
 gdvdetail.DataSource = mybindingsource
 End Sub
 End Class
 
 
 
 |