Hallo,
Ich habe es bereits geschafft ein TreeView mit Daten aus einer Datenbank zu befüllen. Leider komme ich nicht darauf, wie man mehrere "Main Nodes" erstellt.
Folgende Struktur Funktioniert:
ich möchte aber folgende Struktur:
Das liegt daran, dass meine Rekursive Funktion ein Node erwartet, an das alles angehängt wird. Gibt es eine Möglichkeit ein leeres TreeNode zu erstellen, an dem dann alle Unterelemente hängen?
Hier mein SourceCode:
dbKlasse:
Schon Danke im Voraus
Liebe Grüße
Ich habe es bereits geschafft ein TreeView mit Daten aus einer Datenbank zu befüllen. Leider komme ich nicht darauf, wie man mehrere "Main Nodes" erstellt.
Folgende Struktur Funktioniert:
ich möchte aber folgende Struktur:
Das liegt daran, dass meine Rekursive Funktion ein Node erwartet, an das alles angehängt wird. Gibt es eine Möglichkeit ein leeres TreeNode zu erstellen, an dem dann alle Unterelemente hängen?
Hier mein SourceCode:
dbKlasse:
VB.NET-Quellcode
- Public Sub getTreeNodes(ByVal parentID As Long, ByRef Node As TreeNode)
- Try
- If parentID < 0 Then Throw New Exception("ParentID darf nicht <=0 sein!")
- Dim dt As New DataTable
- Dim strSQL As String = ""
- Dim db As New ATdbSQLServer
- strSQL = "SELECT Name, pid "
- strSQL &= " FROM dbo.Baumstruktur "
- strSQL &= "WHERE (parentPID = " & parentID & ") "
- dt = db.dsGetValues(strSQL)
- If IsNothing(dt) Or dt.Rows.Count = 0 Then Return
- For Each dr As DataRow In dt.Rows
- Dim NewNode As New TreeNode(dr("Name"))
- NewNode.Tag = dr("pid")
- getTreeNodes(dr("pid"), NewNode)
- Node.Nodes.Add(NewNode)
- Next
- Catch ex As Exception
- Throw ex
- End Try
- End Sub
- 'Aufruf:
- Dim Nd As New System.Windows.Forms.TreeNode("Ungewünschter MainNode") 'Diese Nodeanlegen sollte auf irgend eine art entfernt werden.
- Nd.Expand()
- getTreeNodes(0, Nd)
- TreeView1.Nodes.Add(Nd)
Schon Danke im Voraus
Liebe Grüße