Die Codierung eines Klick-Events einer Form für eine mit Form1 bezeichnete Formklasse macht dies deutlicher (dieser Code ist in der Methode InitializeComponent im „versteckten“ Bereich des vom Windows Form Designer generierten Code zu finden):
this.Click += new System.EventHandler(this.Form1_Click);
Das diesbezügliche Framework für die Event-Methode ist:
private void Form1_Click(object sender, System.EventArgs e) {}
Ein Event lässt sich problemlos aus einem anderen Event heraus aufrufen. Der nachstehende Code zeigt zum Beispiel eine Meldung an, wenn das Eingabe-Event von Button1 ausgelöst wird:
private void button1_Enter(object sender, System.EventArgs e) { MessageBox.Show ("The Button's Enter event has been fired", "C# for Newbies", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);}
Um das Eingabe-Event von Button1 aus einem anderen Event auszulösen, muss der Methode Button1_Enter im anderen Event ein Aufruf hinzugefügt werden. Dieser Code würde in einem DoubleClick-Event der Form so aussehen:
private void Form1_DoubleClick(object sender, System. EventArgs e) { button1_Enter (sender, e); }
Wenn nun auf die Form doppelgeklickt wird, erscheint mit dem Auslösen des Eingabe-Events des Buttons die in Abbildung A gezeigte Meldung.
Abbildung A: Events eignen sich hervorragend für Meldungen wie diese.
Sollte System.EventArgs nicht für die Übergabe des Events zur Verfügung stehen, da es zum Beispiel außerhalb eines Events aufgerufen wird, ist dies kein Problem. Nachstehend ist beschrieben, wie dies erstellt und eine Event-Methode aufgerufen werden kann:
System.EventArgs g = new System.EventArgs(); button1_Enter (this, g);
Neueste Kommentare
Noch keine Kommentare zu Arbeiten mit Events in C#
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.