Und nochmal Treeview

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von ChaosBernd.

    Und nochmal Treeview

    Ich muss mit meinem Treeview noch einmal nerven.
    Nun hab ich ein Problem mit meinen Ebenen....

    Folgendermaßen sieht meine SQL-Tabelle aus:

    bilder-space.de/show_img.php?i…7135717.jpg&size=original

    mit diesem Code lese ich die Tabellendaten in mein TreeView ein:

    VB.NET-Quellcode

    1. Dim AnzTreeNodes As Integer = 0
    2. For Each row As DataRow In dtMSG.Rows
    3. If row.Item("Parent") = 0 Then
    4. TreeView1.Nodes.Add(row.Item("Zeit") & " | " & row.Item("Absender") & ": " & row.Item("Nachricht"))
    5. TreeView1.Nodes.Item(AnzTreeNodes).Tag = row.Item("MsgID")
    6. If row.Item("gelesen/bearbeitet") = True Then
    7. TreeView1.Nodes.Item(AnzTreeNodes).ForeColor = Color.Green
    8. End If
    9. AnzTreeNodes = AnzTreeNodes + 1
    10. ElseIf row.Item("Parent") <> 0 Then
    11. For Each Node As TreeNode In TreeView1.Nodes
    12. If Node.Tag = row.Item("Parent") Then
    13. Dim NewNode As New TreeNode
    14. NewNode.Text = row.Item("Nachricht") & " (schrieb *" & row.Item("Absender") & "* am: " & row.Item("Zeit") & ")"
    15. NewNode.Tag = row.Item("MsgID")
    16. If row.Item("gelesen/bearbeitet") = True Then
    17. NewNode.ForeColor = Color.Green
    18. End If
    19. TreeView1.Nodes.Item(Node.Index).Nodes.Add(NewNode)
    20. End If
    21. Next
    22. End If
    23. Next


    Und dabei kommt dann folgendes heraus:

    bilder-space.de/show_img.php?i…7135369.jpg&size=original

    Wieso kann ich die Einträge mit den MsgID´s 22, 23 und 28 nicht sehen, die ja eigentlich in Ebene 3 unterhalb des Eintrags "schöööööön" auftauchen sollten!?

    Freu mich über jede noch so kleine Hilfe/Anregung!

    Vielen Dank
    ich kann in deiner Tabelle erkennen.
    Alle ID's die in der Parent auch einen Eintrag haben werden angezeigt.
    Alle ID's die keine Eintrag in der Parent haben, werden nicht angezeigt.

    vieleicht suchst du in diesem Bereich nochmal.

    mehr kann ich nicht erkennn