Entwickler-Ecke
WinForms - FolderBrowserDialog Frage
csharper - Di 23.09.08 16:14
Titel: FolderBrowserDialog Frage
Hi,
ich versuche in einem FolderBrowserDialog die in den Ordnern enthaltenen Dateien anzeigen zu lassen. Es sollen nur Dateien mit einer bestimmten Endung angezeigt werden.
Wie kann ich das machen? Der FolderBrowserDialog ist ja nicht sonderlich komfortabel.
Grüße
Moderiert von
Christian S.: Topic aus Basistechnologien verschoben am Di 23.09.2008 um 16:50
Christian S. - Di 23.09.08 16:50
Hallo und :welcome:!
Eine Zange, die man als Schraubenzieher benutzen will, ist auch nicht komfortabel. Der FolderBrowser ist zur Anzeige von Ordnern da - und das macht er gut. Wenn Du Dateien anzeigen willst, dann nimm den OpenFileDialog.
Grüße
Christian
csharper - Mi 24.09.08 10:17
Hab folgendes ausprobiert:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| FolderBrowserDialog dialog = new FolderBrowserDialog(); fbd1.Description = "Select the Folder (must contain a *.cs File)";
if (dialog.ShowDialog() != DialogResult.OK) return; string strPath = dialog.SelectedPath; DirectoryInfo info = new DirectoryInfo(strPath); foreach (FileInfo fi in info.GetFiles("*.cs")) { } |
Da komm ich nicht weiter. Wie kann ich das ausgeben lassen?
daisyking - Mi 24.09.08 10:41
hallo u :welcome: auch von meiner seite,
ich hoffe der folgende code hilft dir etwas. hatte so ein ähnliches problem gehabt u wie folgt gelöst:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| private void btnLabelName_Click(object sender, EventArgs e) { aufrufLabel(); } private void aufrufLabel() { OpenFileDialog ofd = new OpenFileDialog(); ofd.InitialDirectory = @"D:\Projekt\Debug"; ofd.Filter = "*.lbl|*.lbl"; ofd.Title = "Vorhandene Barcode"; ofd.ShowDialog();
if (ofd.ShowDialog() == DialogResult.OK) { fileNameWatch =ofd.SafeFileName; tbLabel.Text = fileNameWatch; }
} |
gruss daisking :?:
Moderiert von
Christian S.: Code- durch C#-Tags ersetzt
JüTho - Mi 24.09.08 10:53
Hallo,
csharper hat folgendes geschrieben: |
| Da komm ich nicht weiter. Wie kann ich das ausgeben lassen? |
Direkt im FolderBrowserDialog offensichtlich nicht; darauf hatte ja Christian schon hingewiesen.
Du kannst Dir irgendetwas aussuchen, z.B. eine mehrzeilige TextBox. In deren Text-Eigenschaft kannst Du die Liste der Dateien eintragen. Dazu musst Du eine passende Methode
richtig verwenden. DirectoryInfo.GetFiles liefert eine Liste von FileInfo; Du willst aber nur eine Liste von Dateinamen, also string[]. Das geht schneller so:
C#-Quelltext
1:
| MyTextBox.Lines = Directory.GetFiles(strPath, "*.cs"); |
Bitte beachte: Operationen mit Dateien und Verzeichnissen gehen meistens mit
statischen Methoden von
File, Path, Directory. Nur dann, wenn eine Datei bzw. ein Verzeichnis mehrfach verwendet wird oder die statischen Methoden nicht genügend Informationen liefern, sind
FileInfo, DirectoryInfo zu verwenden.
Jürgen
csharper - Mi 24.09.08 13:07
Hi JüTho
danke das hat geklappt jetzt kann ich die Dateien anzeigen lassen, kann jetzt dann endlich weiterarbeiten an dem Programm. Danke :D
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!