RISOLTO!!!vb.net Treeview non funziona il terzo livello

di il
6 risposte

RISOLTO!!!vb.net Treeview non funziona il terzo livello

Salve,

sono riuscito a fare funzionare la treeview con 2 livelli ma aggiunto il terzo mi da errore di index

potete aiutarmi, pubblico il sorgente 

la tabella : id_livello_padre, id_livello_figlio, descrizione

 Private Sub Form9_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Dim mtable2 As New DataTable
       mtable2 = MyDBaseM.Table("SELECT * FROM livelli")
       TreeView1.Nodes.Clear()

       'add i primi livelli
       For Each dr As DataRow In mtable2.Rows
           If dr.Item("ID_Livello_padre").Equals(0) Then
               TreeView1.Nodes.Add(dr.Item("descrizione"))
           End If
       Next

       'add i secondi livelli
       Dim child As Integer = 0
       Dim grandchild As Integer = 0
       For Each dr2 As DataRow In mtable2.Rows

           For Each dr2Child As DataRow In mtable2.Select("ID_Livello_Padre='" & dr2.Item("ID_Livello_figlio") & "'")
               If child < TreeView1.Nodes.Count - 1 Then
                   TreeView1.Nodes(child).Nodes.Add(dr2Child.Item("descrizione"))
               End If

               '   add i terzi livelli
               For Each dr2GrandChild As DataRow In mtable2.Select("ID_Livello_Padre='" & dr2Child.Item("ID_Livello_figlio") & "'")
                   TreeView1.Nodes(child).Nodes(grandchild).Nodes.Add(dr2GrandChild.Item("descrizione"))
               Next
               grandchild = grandchild + 1
           Next
           child = child + 1
       Next
   End Sub

6 Risposte

Devi accedere o registrarti per scrivere nel forum
6 risposte