vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Images in TreeView 
Autor: TheWanderer
Datum: 13.10.04 09:25

Hallo zusammen,

ich habe folgendes Problem: Ich möchte erzeuge ein TreeView zur Laufzeit aus einer Datenbank, in der die Reihenfolge und Ebene des TreeViews gespeichert sind.
Ich erstelle also jeweils einen Knoten, packe ihn an die richtige Stelle u möchte anschließend je nach Datatyp dem Knoten ein Image aus einer dem TreeView zugeordneten ImageList zuweisen. Hier mein Code:
Dim Maxebene As Integer
        Dim dv As DataView
        Dim dr As DataRowView()
        Dim i, currebene As Integer
        Dim XNode(0) As TreeNode
        Strukturtree.Nodes.Add("Name")
 
        XNode(0) = Strukturtree.Nodes(0)
        Strukturtree.BeginUpdate()
        Maxebene = 1
 
        For i = 0 To dtStruktur.Rows.Count - 1
            Select Case api.cvint(dtStruktur.Rows(i)("Ebene"))
                Case 0
                    currebene = 1
                    Maxebene = 2
                Case Is > Maxebene
                    currebene = Maxebene
                    Maxebene += 1
                Case Is <= Maxebene
                    currebene = api.cvint(dtStruktur.Rows(i)("Ebene"))
                    Maxebene = currebene + 1
            End Select
 
            ReDim Preserve XNode(currebene)
            XNode(currebene) = XNode(currebene - 1).Nodes.Add(dtStruktur.Rows( _
              i)("Bezeichner"))
            XNode(currebene).Tag = dtStruktur.Rows(i)("ID")
 
            Dim node As TreeNode
            Select Case api.cvint(dtStruktur.Rows(i)("Datatyp"))
                Case 0
                    node = XNode(currebene)
                    node.SelectedImageIndex = 5
                    node.ImageIndex = 5
                Case 1, 7
                    dv = New DataView(dtDaten)
                    dv.Sort = "Strukturnummer"
                    dr = dv.FindRows(dtStruktur.Rows(i)("ID"))
 
                    If dr.Length = 0 Then
                        XNode(currebene).ImageIndex() = 1
                    Else
                        Dim j As Integer
                        For j = 0 To dr.Length - 1
                            If dr(j).Item("Optionen") > 1 Then
                                XNode(currebene).ImageIndex() = 5
                            Else
                                XNode(currebene).ImageIndex() = 0
                            End If
 
                            If Not dtStruktur.Rows(i)("Faktor") Is _
                              System.DBNull.Value Then
                                If dtStruktur.Rows(i)("Faktor") > "" Then
                                    XNode(currebene).Text = XNode( _
                                      currebene).Text & "(" & dtStruktur.Rows( _
                                      i)("Faktor") & " " & Val(dr(j).Item( _
                                      "Faktor")) & "%)"
                                End If
                            End If
                        Next j
                    End If
                Case 2
                    XNode(currebene).ImageIndex() = 4
                Case 3, 4, 5, 6, 8, 9
                    XNode(currebene).ImageIndex() = 3
            End Select
        Next i
 
        Strukturtree.EndUpdate()
Aus welchem Grund auch immer wird den Knoten aber immer das Image mit dem Index 0 zugeordnet (das Standardimage). Ich seh den Wald vor lauter Bäumen nicht mehr. Vielleicht hat ja jemand nen Plan woran es liegen könnte.

Gruß TheWanderer
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Images in TreeView1.004TheWanderer13.10.04 09:25
Re: Images in TreeView844Net.Ultimate13.10.04 09:38
Re: Images in TreeView660TheWanderer13.10.04 10:10
Re: Images in TreeView683Net.Ultimate13.10.04 10:47
Re: Images in TreeView658TheWanderer13.10.04 10:54

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel