Hallo da bin ich nochmal.Ich habe mich soweit es ging mit Events auseinander gesetzt.habe es auch hinbekommen nach dem Beispiel aus dem Thread mit meinem window4 ( SubForm ) daten zu meinem Hauptfenter window4 (MainForm) zu schicken der austausch funktioniert wundervoll.
Aber jetzt wollte ich den Spieß umdrehen und meine Daten von der MainForm an meine SubForm zu schicken und da passiert absolut gar nichts.
Der Teil mit dem ich gearbeitet habe ist:
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:
| class SubForm : Form { public class TextEventArgs : EventArgs { public TextEventArgs(string text) { Text = text; } public string Text { get; set; } } public event EventHandler<TextEventArgs> UpdateText; void button_Click(object sender, EventArgs e) { OnUpdateText(new TextEventArgs("Test")); } protected virtual void OnUpdateText(TextEventArgs e) { EventHandler<TextEventArgs> ev = UpdateText; if (ev != null) ev(this, e); } }
class MainForm : Form { void button_Click(object sender, EventArgs e) { SubForm subForm = new SubForm(); subForm.UpdateText += UpdateLabelText; subForm.ShowDialog(this); } void UpdateLabelText(object sender, SubForm.TextEventArgs e) { labelText.Text = e.Text; } } |
Ich habe von dem oben beschriebenen Beispiel einfach mal den Spieß umgedreht und da hat meine Subform keine daten erhalten.
Ich finde einfach keine Möglichkeit von meinem Hauptfenster aus Daten mittels Event an mein SubForm verschicken zu können.
ich verzweifle!!
Moderiert von
Kha: C#-Tags hinzugefügt