Autor Beitrag
csharper
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Di 21.10.08 11:44 
Hi,

kann ich bei einem FolderBrowserDialog, ähnlich wie bei einem OpenFileDialog, mehrere Ordner aussuchen?

Grüße
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 21.10.08 13:48 
Nein.
Sorry, die Antwort ist wirklich so kurz ...

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
csharper Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mi 22.10.08 08:11 
Wie kann ich dann einen FolderBrowserDialog multiselect fähig machen? Möchte nicht nur einen Ordner aussuchen sondern mehrere gleichzeitig.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mi 22.10.08 09:34 
Da dies eine gekapselte Windows-API-Komponente ist (SHBrowseForFolder), kann man diese nicht umändern.
Eine Alternative wäre z.B. ein TreeView, den man dann multiselectionsfähig macht (habe ich bei mir rumliegen und könnte dir schicken).
Den TreeView dann rekursiv mittels Directory.GetDirectories() füllen.
csharper Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mi 22.10.08 09:52 
Oh das wär toll wenn du mir den Treeview mal schicken könntest. Ich schick dir mal ne PM mit meiner Adresse.
csharper Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mi 22.10.08 10:57 
Kann ich das noch anders machen als über einen Treeview? Ich haben den FolderBrowserDialog an einen OpenFileDialog angefügt. Das bedeutet, dass ich erst einen OpenFileDialog habe, dort eine Datei aussuche und danach der FolderBrowserDialog angezeigt wird. Diesen möchte ich ja wie gesagt Multiselectionsfähig haben, da ich nicht alle Ordner durchsuchen möchte. Der Treeview wird ja dann auf der Oberfläche direkt angezeigt oder ?
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mi 22.10.08 11:45 
Ich habe dir eine PM geschickt (mit Anhang).

Trotzdem verstehe ich jetzt deine letzte Frage nicht.
Du suchst erst eine Datei aus und willst dann mehrere Ordner auswählen? Wofür?

Und den TreeView kannst du einfach in einen eigenen Dialog einbinden.
csharper Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mo 27.10.08 09:19 
Sorry fürs späte Rückmelden, danke hab dein PM bekommen.

Also ich vergleiche den Inhalt von bestimmten Dateien die sich in den Ordnern befinden mit dem Inhalt von der ausgewählten Datei. Daher muss ich erst eine Datei aussuchen und dann den Ordner damit die Dateien verglichen werden können.

Dann schreibe ich mir praktisch einen eigenen Dialog und in diesem lasse ich dann den Treeview anzeigen stimmt das so?

Grüße
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mo 27.10.08 10:56 
Ok, jetzt habe ich es mit der Auswahl der Datei und den Ordnern verstanden.

Und ja, einfach einen eigenen Dialog schreiben und darauf dann den multi-select TreeView, evtl. ein Label und zwei Buttons 'OK' und 'Cancel' setzen.

Edit: Die Liste aller Laufwerke erhälst du mittels 'DriveInfo.GetDrives()'. Und für diese dann jeweils beim TreeView.AfterExpand-Ereignis dann Directory.GetDirectory() aufrufen (nicht schon am Anfang alle Ordner einlesen, das würde viel zu lange dauern, sondern erst wenn der User den Ordner 'öffnet').
csharper Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mo 27.10.08 17:06 
Ok danke für den tipp, ich hätte wahrscheinlich die Ordner gleich zu beginn geöffnet. ;-)
csharper Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mi 29.10.08 15:46 
Hi habs hinbekommen, hab den Treeview um Checkboxen erweitert, da muss ich es jetzt nur noch hinbekommen das wenn ich den übergeordneten Ordner anklicke auch die darunterliegenden Ordner markiert sind.

Aber danke für die Hilfe