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-2024
 
zurück

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

VB.NET - Ein- und Umsteiger
Zwei Treeviews vergleichen 
Autor: Manfred X
Datum: 22.06.17 09:22

Hallo!

Probiere diese einfache, grob getestete Methode ....

"FindNodeByPath" sucht rekursiv, ob ein Knotenpfad in einem
Treeview enthalten ist.

"CompareTreeValues" prüft für einen Knoten im ersten Treeview,
ob es einen entsprechenden Pfad im zweiten Treeview gibt.
Fehlende Pfade (= fehlende Einträge oder geänderte Werte)
werden im ersten Treeview rot markiert.

Mit "NextNode" durchläuft man rekursiv die Knoten des ersten
Treeview und ruft für jeden Knoten "CompareTreeValues".

Private Function FindNodeByFullPath(tncoll As TreeNodeCollection, _
        fullpath As String) As TreeNode
 
    Dim tnFound As TreeNode
 
    For Each tnCurr As TreeNode In tncoll
       If tnCurr.FullPath = fullpath Then Return tnCurr
 
       tnFound = FindNodeByFullPath(tnCurr.Nodes, fullpath)
       If tnFound IsNot Nothing Then Return tnFound
    Next tnCurr
 
    Return Nothing
End Function
 
 
Private Sub CompareTreeValues(ByVal tnbase As TreeNode, _
        searchtree As TreeNodeCollection)
 
   Dim tnfound As TreeNode = _
        FindNodeByFullPath(searchtree, tnbase.FullPath)
 
   With tnbase
      If tnfound Is Nothing Then
         .BackColor = Color.Red
         .ForeColor = Color.White
      Else
         .BackColor = Color.White
         .ForeColor = Color.Black
      End If
   End With
End Sub
 
 
Private Function NextNode(ByVal tncoll As TreeNodeCollection) As TreeNode
 
    For Each tncurr As TreeNode In tncoll
        CompareTreeValues(tncurr, trv2.Nodes)
        NextNode(tncurr.Nodes)
    Next tncurr
 
    Return Nothing
End Function
.
.

Anwendung:

Seien "trv1", "trv2" zwei Winforms-Treeview-Controls
und "FillTree" die Routine (mit Parameteraufruf) zum Füllen
eines Treeview aus der hierarchisch aufgebauten Ini-Datei ....
  FillTree("C:\Daten\inimasch2.txt", trv1)
  FillTree("C:\Daten\inimasch1.txt", trv2)
 
  NextNode(trv1.Nodes) 'Markieren der Abweichungen von trv2 in trv1
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
ini in Treeview einlesen3.644schwesig28.03.17 21:03
Re: ini in Treeview einlesen2.497Franki29.03.17 03:49
Re: ini in Treeview einlesen2.593schwesig29.03.17 05:26
Re: ini in Treeview einlesen2.483Manfred X29.03.17 07:38
Beispiel irgendwie ????2.590Manfred X29.03.17 08:09
Re: Beispiel irgendwie ????2.522schwesig29.03.17 20:18
Re: Beispiel irgendwie ????2.548Manfred X29.03.17 21:46
Re: Beispiel irgendwie ????2.335effeff08.04.17 17:26
Re: ini in Treeview einlesen2.387Franki30.03.17 02:32
Re: ini in Treeview einlesen2.407Manfred X30.03.17 11:05
Re: ini in Treeview einlesen2.368schwesig30.03.17 17:10
Treeview editieren2.567Manfred X30.03.17 17:53
Re: Treeview editieren2.519schwesig30.03.17 18:07
Re: Treeview editieren2.418Manfred X30.03.17 18:51
Re: ini in Treeview einlesen2.322Franki31.03.17 03:08
Windows-Ini ?2.438Manfred X31.03.17 08:12
Re: Windows-Ini ?2.500Franki01.04.17 04:31
Re: Windows-Ini ?2.330Manfred X01.04.17 08:48
Re: Windows-Ini ?2.352Franki08.04.17 05:01
Re: Windows-Ini ?2.497Manfred X08.04.17 12:07
Re: Windows-Ini ?2.432Franki10.04.17 04:17
Re: Windows-Ini ?2.292effeff11.04.17 09:00
Re: Windows-Ini ?2.282Franki13.04.17 03:04
Re: ini in Treeview einlesen2.289schwesig13.04.17 06:40
Re: ini in Treeview einlesen2.393Manfred X13.04.17 08:35
Re: ini in Treeview einlesen2.287schwesig13.04.17 09:10
Re: ini in Treeview einlesen2.370Manfred X13.04.17 09:23
Re: ini in Treeview einlesen2.368schwesig13.04.17 09:28
Re: ini in Treeview einlesen2.325Manfred X13.04.17 09:40
Re: ini in Treeview einlesen2.085schwesig21.06.17 20:48
Zwei Treeviews vergleichen2.312Manfred X22.06.17 09:22
Re: ini in Treeview einlesen2.069schwesig22.06.17 19:17
Zwei Treeviews vergleichen2.178Manfred X22.06.17 20:37
Re: ini in Treeview einlesen2.185schwesig22.06.17 22:19
Re: ini in Treeview einlesen2.080Manfred X22.06.17 22:53
Re: ini in Treeview einlesen2.086schwesig23.06.17 19:12
Re: ini in Treeview einlesen2.194Manfred X24.06.17 07:31
Re: ini in Treeview einlesen2.044schwesig24.06.17 09:40
Re: ini in Treeview einlesen2.102Manfred X24.06.17 13:39
Größe ändern2.131schwesig25.06.17 19:56
Re: Größe ändern2.098Manfred X25.06.17 21:58
Re: Größe ändern2.137schwesig26.06.17 18:47
Schlüssel-Auswahl in Knoten eintragen2.218Manfred X26.06.17 20:35
Re: Schlüssel-Auswahl in Knoten eintragen2.098schwesig29.06.17 20:40
Re: Schlüssel-Auswahl in Knoten eintragen2.165Manfred X29.06.17 23:47
Re: Schlüssel-Auswahl in Knoten eintragen2.029schwesig04.08.17 12:25
Re: Schlüssel-Auswahl in Knoten eintragen2.013Manfred X04.08.17 14:10
Re: Größe ändern1.972schwesig04.08.17 15:44
Re: Größe ändern1.843schwesig05.08.17 17:40

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-2024 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