Hallo,
ich habe eine Form, die über DataBinding gefüllt wird mit den Inhalten einer Modellklasse
C#-Quelltext
1: 2: 3: 4:
| public partial class BehaelterEditUserControl : UserControl {
Logics.Container localContainer = null; |
C#-Quelltext
1: 2: 3: 4: 5:
| private void treeBehaelter_AfterSelect(object sender, TreeViewEventArgs e) { localContainer = ContainerMethods.GetContainerDetails(e.Node.Text); bsContainer.DataSource = localContainer; } |
Nun möchte ich nach dem Speichern des Containers die Felder leeren, die zur Bearbeitung der Instanz zur Verfügung standen
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: 27: 28: 29:
| private void btnSpeichern_Click(object sender, EventArgs e) { try { if (localContainer == null) MsgAusgabe.ShowError("Bitte wählen Sie einen Behälter zum Bearbeiten aus!"); else if (ContainerMethods.CheckContainer(localContainer) == 1) MsgAusgabe.ShowError("Dieser Behälter existiert bereits im System!"); else if (!localContainer.IsValid) MsgAusgabe.ShowError("Bitte erfassen Sie alle Felder!"); else if ((localContainer != null) && (localContainer.IsValid)) { if (MsgAusgabe.AskQuestionYesNo("Sollen die vorgenommenen Änderungen gespeichert werden?") == DialogResult.Yes) { ContainerMethods.UpdateContainerDetails(localContainer); MsgAusgabe.ShowInformation("Behälter erfolgreich gespeichert!"); MySqlHistorie.SetHistorie("Behälterverwaltung", localContainer.Label, "Geändert", employee); LoadTreeView(); localContainer = null; bsContainer.DataSource = localContainer; } } } catch (Exception ex) { MySqlError.SetError(ex.Message, this.ToString(), Global.GetCurrentFunctionName()); MsgAusgabe.ShowError(ex.Message); } } |
Nun speichert und tut alles richtig, außer, dass wenn er die Felder leeren will über die leere Instanz ein Fehler kommt. (siehe Anlage)
Das UserControl habe ich auch als Anlage angefügt!
Kann mir hier jemanden einen Tipp geben?
Danke
Gruß
Daniel