Hallo. Ich bin neu in diesem Forum und habe eine Frage
Ich habe ein
Dictionary<RichTextBox, string>();
Wenn ich in meiner Anwendung neue Dateien hinzufüge, klappt alles super. Auch beim öffnen haut alles hin. Wenn ich das Projekt jedoch spichern möchte, dass wird nur der voherige Text jeder RichTextBox gespeichert. Ich weiß auch warum: beim Öffnen wird das Dictionary gefüllt und behält somit die alten Daten auch beim Speichern. Aber wie bekomme ich den neuen Text in das Dictionary?
Hier der Speicheralgorithmus:
C#-Quelltext
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:
| try { if ((HauptPfad != "") && (this.tabControl1.TabPages.Count > 0)) { this._dictionary.Clear(); foreach (var v in this._dictionary) { using (StreamWriter writer = new StreamWriter(v.Value.ToString())) { foreach (var line in v.Key.Lines) { writer.WriteLine(line.ToString()); } writer.Close(); } } } else { MessageBox.Show("Sie können die Dateien nicht speichern, da Sie erst ein neues Projekt anlegen müssen oder Sie müssen ein Projekt öffnen.", "Leerer Pfad", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); } } catch (Exception ex) { MessageBox.Show(ex.Message); } |
Die RichTextBoxen lieger auf einer TabPage in einer TabControl. Für jede Antwort bin ich dankbar