Laden...

TreeView mit Checkboxen Rückgaben

Erstellt von Chakuza1505 vor 9 Jahren Letzter Beitrag vor 9 Jahren 1.771 Views
C
Chakuza1505 Themenstarter:in
2 Beiträge seit 2015
vor 9 Jahren
TreeView mit Checkboxen Rückgaben

Hallo zusammen,

ich habe folgendes Problem. Ich habe ein TreeView Objekt welches ich in meinem Programm als Explorer Benutze, heißt ich lasse dort die Festplatten inkl. Verzeichnissstruktur einlesen. Das funktioniert auch alles sehr gut.

So jetzt zum eigentlichen Problem, der Benutzer soll halt via den Checkboxen im TreeView mehrere Dateien oder Ordner in dem Explorer markieren können. Dies funktioniert auch.

Jetzt möchte ich aber von jedem angecheckten Knoten den Pfad auslesen und in einem Array speichern. Es gibt aber scheinbar keine Methode für das TreeView wo ich mir alle angehackten Knoten zurückgeben lassen kann. Es gibt nur eine Methode wo ich prüfen kann ob genau dieser Knoten angechecked ist, da muss ich aber selber einen Index übergeben um genau den Knoten abzufragen, ich möchte aber gerne alle Knoten aufeinmal abfragen.

Idee ist dann jetzt gewesen alle Knoten einzeln mit einer Schleife durchzugehen und zu prüfen welche gechecked sind und von diesen mir dann den FullPath() zurückgeben zu lassen. Problem an der Sache wenn ich zum Beispiel den Knoten für Laufwerk C:\ erweiter (kleines plus) und dort einen unterknoten anchecke und dann die erweiterung wieder schließe, also die Auflistung minimiere dann komm ich an den unterknoten nicht mehr dran weil der mir dann zurückgibt das der IndexOutofRange ist da der diesen nicht kennt, weil der Knoten nicht mehr erweitert ist.

hat jemand eine Idee wie ich das umsetzen kann?

Gruß

Andre

T
461 Beiträge seit 2013
vor 9 Jahren

Hallo,

ist das unter WPF oder WinForms?

Ich habe den Titel mal angepasst, so dass Suchende auch etwas damit anfangen können. EDIT: Ich sollte beim Wort "Shift" im Titel das "f" nicht vergessen... 😄

C
Chakuza1505 Themenstarter:in
2 Beiträge seit 2015
vor 9 Jahren

Ist winforms

T
461 Beiträge seit 2013
vor 9 Jahren

Hmm, unter WPF wäre es einfach, unter Winforms müßte ich erst selber schauen.. und den gesagten Fehler bei einem geschlossenen Knoten müßt ich erst nachstellen...

Wird aber erst später werden..

Ich habe den Titel mal angepasst, so dass Suchende auch etwas damit anfangen können. EDIT: Ich sollte beim Wort "Shift" im Titel das "f" nicht vergessen... 😄

4.931 Beiträge seit 2008
vor 9 Jahren

Hallo,

du benötigst nicht unbedingt einen Index, sondern nur eine Objektreferenz, d.h. man kann einfach rekursiv über alle Items iterieren, s z.B. how to get all selected checkboxes node name in TreeView using c# 4.0? (oder aber alternativ den dortigen Ansatz mit dem AfterCheck-Ereignis nutzen).