vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 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
Re: TreeNode.Tag verwenden 
Autor: WaldiMaywood
Datum: 07.02.04 13:52

Beschränke dich doch nicht auf die Tag Eigenschaft. Es gibt so viele Möglichkeiten dies ohne dieser Eigenschaft zu realisieren.

Du kannst z.b. eine neue TreeNode Klasse erstellen, welches alles von der TreeNode BasisKlasse erbt, und diese neue Klasse kannst an deine Wünsche anpassen und eventuell erweitern. Hab da mal etwas vorbereitet:

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button2.Click
' meine Variante den Baum zu füllen 
        Dim geraetenameN, teilenameN, endteilN As GeraeteTreeNode
        For Each geraetename As DataRow In dtA1.Rows
            geraetenameN = New GeraeteTreeNode(geraetename.Item(1).ToString, _
              New Geraete(0, 99, "Test1"))
            For Each teilename As DataRow In dtA2.Rows
                If geraetename.Item(0).Equals(teilename.Item(1)) Then
                    teilenameN = New GeraeteTreeNode(teilename.Item( _
                      2).ToString, New Geraete(1, 199, "Test2"))
                    For Each endteil As DataRow In dtA3.Rows
                        If teilename.Item(0).Equals(endteil.Item(1)) Then
                            endteilN = New GeraeteTreeNode(endteil.Item(2), New _
                              Geraete(1, 299, "Test3"))
                        End If
                    Next
                End If
            Next
            Me.TreeView1.Nodes.Add(geraetenameN)
        Next
    End Sub
    Private Sub TreeView1_AfterSelect(ByVal sender As System.Object, ByVal e As _
      System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
' hier kannst  du jetzt alle Informationnen des angeklicken Node in Erfahrung 
' bringen
        MessageBox.Show(CType(e.Node, _
          GeraeteTreeNode).GeraeteInformationen.Ebene.ToString)
        MessageBox.Show(CType(e.Node, _
        GeraeteTreeNode).GeraeteInformationen.GeraeteName.ToString)
        MessageBox.Show(CType(e.Node, _
        GeraeteTreeNode).GeraeteInformationen.GeraeteNummer.ToString)
    End Sub
'die "neuen" Klassen die uns das Leben etwas einfacher machen sollen:
Public Class Geraete
    Public Sub New(ByVal Ebene As Int32, ByVal GeraeteNummer As Int32, ByVal _
      GeraeteName As String)
        Me.Ebene = Ebene
        Me.GeraeteNummer = GeraeteNummer
        Me.GeraeteName = GeraeteName
    End Sub
    Public Ebene As Integer 'Ersatz für Tag
    Public GeraeteNummer As Integer
    Public GeraeteName As String
End Class
Public Class GeraeteTreeNode : Inherits TreeNode
    Public GeraeteInformationen As Geraete
    Public Sub New(ByVal Text As String, ByVal GeraeteInformationen As Geraete)
        MyBase.New()
        MyBase.Text = Text
        Me.GeraeteInformationen = GeraeteInformationen
    End Sub
End Class
Steve
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
TreeNode.Tag verwenden1.030paul12307.02.04 08:40
Re: TreeNode.Tag verwenden895WaldiMaywood07.02.04 13:52
Nachtrag!586WaldiMaywood07.02.04 13:57
Re: Nachtrag!549paul12308.02.04 05:54
Re: Dein Code passt, Danke!578paul12308.02.04 06:38
Re: Dein Code passt, Danke!571WaldiMaywood08.02.04 12:18
Re: Problem mit Variablenzugriff606paul12310.02.04 10:57
Re: Problem mit Variablenzugriff643WaldiMaywood10.02.04 12:13

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