Unterelemente im Treeview rekursiv aufrufen

denhoff

Grünschnabel
Hallo,
In meinem Treeview werden durch folgendem Code ein Treenode aufgerufen, soweit auch ok dazu mal der Code:

Code:
Private Sub form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim connstr As String = My.Settings.Database2ConnectionString
        Dim conn As New SqlConnection(connstr)
        Dim cmd As New SqlCommand("SELECT * FROM WG WHERE (VG = 0)", conn)
        conn.Open()
        Dim dr As SqlDataReader = cmd.ExecuteReader()
        While dr.Read()
            Dim tn As TreeNode = New TreeNode
            tn.Text = dr("WGG").ToString()
            tn.Name = dr("ID").ToString()
            TreeView1.Nodes.Add(tn)
        End While
        dr.Close()
        conn.Close()
    End Sub


beim weiteren aufrufen untergeordneter Knoten läuft im ersten Moment auch alles glatt, hierzu auch mal der code:
code:
Code:
TextBox1.Text = TreeView1.SelectedNode.Name
        Label4.Text = TreeView1.SelectedNode.Text
        textbox2.text = TreeView1.SelectedNode.Index
        Dim connstr As String = My.Settings.Database2ConnectionString
        Dim conn As New SqlConnection(connstr)
        Dim cmd As New SqlCommand("SELECT * FROM WG WHERE (VG = '" & TextBox1.Text & "')", conn)
        conn.Open()
        Dim dr As SqlDataReader = cmd.ExecuteReader()
        While dr.Read()
            Dim tn As TreeNode = New TreeNode
            tn.Text = dr("WGG").ToString()
            tn.Name = dr("ID").ToString()
            TreeView1.Nodes(0).Nodes.Add(tn)
        End While
        dr.Close()
        conn.Close()

jedoch passiert jetzt folgendes was auch bei der Codezeile:
code:
Code:
TreeView1.Nodes(0).Nodes.Add(tn)

...verständlich ist, das alle weiteren Untergeordneten Unterelemente unterm selben Parent-Node aufgerufen werden und nicht entsprechen wo si hingehören. Ich benötige hierfür eine IF-Anweisung zur Problemlösung soviel weis ich schon nur habe ich gerade kein Plan wie ich diese formulieren soll.
Es geht dabei um Warengruppen aus einer SQL Datenbank kann man warscheinlich anhand des Codes erahnen.
Warengruppe A mit der ID 1 und dem Vorgänger 0 wird mittels des ersten Codes erstellt
Auch werden nun alle Warengruppen mit dem Vorgänger 1 unter Warengruppe A aufgerufen jedoch alle anderen auch.

__________________
Gruß Denis
******************************
Software:
Microsoft Visual Basic 2005 Express Edition
Microsoft Visual Web Developer 2005 Express Edition
Microsoft Office Access 2003
Microsoft SQL Server 2005 Express Edition
-----------------------------------------------------------
Bücher:
Datenbank-Programmierung mit Visual Basic 2005
Access-VBA
Visual Basic 2005
*********************************
 
Ich dachte das wenn es um VisualBasic geht kommt das auch ins Visual-BasicForum.
Aber wenn du der Meinung bist das ist das Falsche hätte ich mich auch um einen erweiterten Hinweis gefreut wo der Beitrag denn hin soll.
 
Da dein Code in der Sprache VB.NET geschrieben ist, wäre es für dich sinnvoller, sie im .NET-Unterforum zu stellen. Diese Forum hier behandelt die Sprache Visual Basic bis zur Version 6.0.

Hintergrund ist, dass sich durch .NET doch einiges in Visual Basic geändert hat, daher ist es sinnvoller, Fragen zu VB.NET im .NET-Unterforum zu stellen.


Der Doc!
 
Zurück