ERLEDIGT
NEIN
NEIN
ANTWORTEN
21
21
ZUGRIFFE
983
983
EMPFEHLEN
-
Hallo
Ich verstehe die Frage nicht wirklich! Ist das noch das Problem mit dem Listbox Item ? Also dem?
Oder etwas anderes ?Code :1
bool of = Directory.Exist(listbox1.SelectedItem.toString());
Und Bitte lasse dir mal nur dein SelectedItem ausgeben. Um zu schauen ob der Pfad ok ist!
MfG
Oli
-
Den ersten Eintrag in meiner Listbox funktioniert. Also er überprüft ob es vorhanden ist.
Beim zweiten Eintrag in der Listbox kommt immer die Meldung: "Illegaler Verzeichnis".
Das ist mein Problem momentant
-
Hallo
naja dann stimmt was mit dem 2 Eintrag nicht.
zeig doch mal hier die Meldung und mache aus dem selecteditem der Listbox einen String und schau ihn dir an ob der Richtig ist. Meine Vermutung ist das der Index irgendwie nicht richtig ist.
MfG
Oli
wie liest du denn die Listbox aus für den 2 Eintrag wäre noch gut zu wissen
geht es um die Funktion?
wenn ja nutze mal die Möglichkeiten der Objekte in C#Code :1 2 3 4 5 6 7
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { string listboxitem = Convert.ToString(listBox1.SelectedItem); MessageBox.Show(listboxitem); }
So kannst du nun mit dem Item und allen Properties oder Methode weiter machen. Du kannst auch das Event nutzen in einer ähnlichen Art und WeiseCode :1 2 3 4
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { ListBoxItem item = sender as ListBoxItem; }
Das Beispiel nutze ich aber in einer ListView was aber vom Prinzip keine Geige spielt.
vielleicht hilft es DirCode :1 2 3 4 5
private void listView2_Click(object sender, RoutedEventArgs e) { try { GridViewColumnHeader headerClicked = e.OriginalSource as GridViewColumnHeader;
Hallo
so habe mal eben 2 Funktionen geschrieben
So bekommst Du alle Items aus der ListBox . Ich habe ein StatischesVerzeichniss gewählt . Dort waren 3 Dateien drin . Habe Sie mir ausgeben lassen bei Item Change. Ich hatte nur .txt im Ordner da ich keinen Filter benutzt habe. Vielleicht hilft es Dir. Ich weiß ja nicht was Du weiter machen willst.Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
public void hallo() { string pfad = "C:\\temp"; DirectoryInfo infoFiles = new DirectoryInfo(pfad); foreach(FileInfo file in infoFiles.GetFiles()) { listBox1.Items.Add(file.ToString()); } } private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { string test = listBox1.SelectedItem.ToString(); MessageBox.Show(test); }
MfG
OliGeändert von sheel (04.02.12 um 17:35 Uhr) Grund: Doppel
-
Hallo also das mit dem Ausgeben der selektierten listboxitem habe ich auch gemacht. Die Messagebox gibt es immer den richtigen pfad an.
Ich poste hier mal den ganzen Quellcode:
und hier mein Inhalt von meiner test.txt datei:Code csharp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public void button1_Click(object sender, EventArgs e) { folderBrowserDialog1.ShowNewFolderButton = true; folderBrowserDialog1.ShowDialog(); String pfad = folderBrowserDialog1.SelectedPath; String verzeichnis = "D:\\test.txt"; StreamWriter sw = new StreamWriter(verzeichnis, true); string zwischenspeicher = pfad + "\\" + ";"; MessageBox.Show(zwischenspeicher); sw.WriteLine(zwischenspeicher); sw.Close(); } private void Form1_Load(object sender, EventArgs e) { String pfad = "D:\\test.txt"; StreamReader sr = new StreamReader(pfad); string Line = sr.ReadToEnd(); string[] split = Line.Split(new Char[] { ';' }); foreach (string s in split) { if (s.Trim() != "") this.listBox1.Items.Add(s); } sr.Close(); } private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { ListBoxItem item = sender as ListBoxItem; string listboxitem = listBox1.SelectedItem.ToString(); MessageBox.Show(listboxitem); } private void textBox1_TextChanged(object sender, EventArgs e) { } private void textBox2_TextChanged(object sender, EventArgs e) { } private void textBox3_TextChanged(object sender, EventArgs e) { } private void label3_Click(object sender, EventArgs e) { } private void button2_Click(object sender, EventArgs e) { MessageBox.Show(Convert.ToString(listBox1.SelectedItem)); int jahrvon = Int32.Parse(textBox1.Text); int monatvon = Int32.Parse(textBox2.Text); int tagvon = Int32.Parse(textBox3.Text); int jahrbis = Int32.Parse(textBox6.Text); int monatbis = Int32.Parse(textBox5.Text); int tagbis = Int32.Parse(textBox4.Text); System.DateTime date2 = new System.DateTime(jahrbis, monatbis, tagbis); System.DateTime date3 = new System.DateTime(jahrvon, monatvon, tagvon); // diff2 gets 55 days 4 hours and 20 minutes. System.TimeSpan diff2 = date2 - date3; // MessageBox.Show(Convert.ToString(date2)); // MessageBox.Show(Convert.ToString(date3)); // MessageBox.Show(Convert.ToString(diff2.Days)); //int differenztag = diff2.Days; //bool OrdnerExisitiert = System.IO.Directory.Exists(Convert.ToString(listBox1.SelectedItem)); //MessageBox.Show(Convert.ToString(OrdnerExisitiert)); //String lokal = "\\Lokal\\"; try { DirectoryInfo infoFiles = new DirectoryInfo((string)listBox1.SelectedItem); bool of = infoFiles.Exists; bool af = Directory.Exists((string)listBox1.SelectedItem); MessageBox.Show(Convert.ToString(of), "Pfad vorhanden", MessageBoxButtons.OK, MessageBoxIcon.Information); MessageBox.Show(Convert.ToString(af)); } catch (Exception t) { MessageBox.Show(Convert.ToString(t)); } //Directory.CreateDirectory(string dirName); // String pfade = Path.Combine(selektiertepfad,lokal); //string selektiertepfad = "D:" + Path.DirectorySeparatorChar + Convert.ToString(listBox1.SelectedItem);//System.IO.Path.Combine("D:", Convert.ToString(listBox1.SelectedItem)); /**MessageBox.Show(selektiertepfad); if (Directory.Exists(@selektiertepfad)) { MessageBox.Show(" Ordner vorhanden, Server", "Ordner Vorhanden im Server", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); } else { MessageBox.Show(" Ordner nicht vorhanden,Server!", "Ordner Vorhanden nicht vorhanden im Server!", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); } /** for (int i = tagvon; i <= tagbis; i++) { //MessageBox.Show(Convert.ToString(i)); string filedate = jahrbis + "-" + monatbis + "-" + i; // MessageBox.Show(filedate,"Datum",MessageBoxButtons.OK,MessageBoxIcon.Information); //MessageBox.Show(liste); /** if (Directory.Exists(@serverpfad)) { MessageBox.Show(filedate + " Ordner vorhanden, Server", "Ordner Vorhanden im Server", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); } else { MessageBox.Show(filedate + " Ordner nicht vorhanden,Server!", "Ordner Vorhanden nicht vorhanden im Server!", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); } if (Directory.Exists(lokalpfad)) { MessageBox.Show(filedate + " Ordner vorhanden, Lokal", "Ordner Vorhanden im Lokal", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); } else { MessageBox.Show(filedate + " Ordner nicht vorhanden,Lokal!", "Ordner Vorhanden nicht vorhanden im Lokal!", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); } */ } } }
D:\debian\;
D:\test2\;
Die beiden pfade existieren zu 100%.
Und wie erwähnt der erste Pfad gibt immer true zurück weil der Pfad auch existiert.
Beim zweiten gibt es immer false zurück bzw. Illegaler Verzeichnis.Geändert von sheel (05.02.12 um 20:03 Uhr) Grund: Codetags
-
Der Pfad ist falsch der \ muß weg !
So:
D:\debian
Bin ich der Meinung zumindest ist es bei mir so
-
Hallo,
vieleicht noch irgendwelche Steuerzeichen enthalten?
Gruß
10110010
-
Hallo,
das wäre meine Variante
ausserdem, erstellt der Konstruktor eine Datei, falls diese nicht vorhanden ist, wenn doch, wird jeder weitere Text angehängt durch den 2. Parameter (apend text = true).
Code csharp:1
StreamWriter sw = new StreamWriter(@"C:\test\test.txt", true, Encoding.UTF8);
Viele Grüße...„Jeder Fehler erscheint unglaublich dumm, wenn Andere ihn begehen.“
Georg Christoph Lichtenberg
Netiquette (vA §15)
Codetags/Codeboxen
Sehr gut gelöste Beiträge bitte mit einem "Danke" abschließen, danke :D
Ähnliche Themen
-
Existenz einer Checkbox überprüfen
Von Trash im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 03.12.11, 11:34 -
Überprüfen ob ein Pfad existiert? in C++
Von DerSiebte im Forum C/C++Antworten: 4Letzter Beitrag: 29.11.07, 15:05 -
CFile -> Existenz der Zieldatei vor dem Öffnen überprüfen
Von Quick_Mik im Forum VisualStudio & MFCAntworten: 5Letzter Beitrag: 05.11.07, 16:58 -
Existenz von Tabellen überprüfen
Von chuqa im Forum VisualStudio & MFCAntworten: 0Letzter Beitrag: 31.08.07, 11:11 -
E-Mailadresse auf Existenz überprüfen
Von SolarStern im Forum PHPAntworten: 9Letzter Beitrag: 05.02.04, 00:08





Zitieren
Login





