Arbeiten mit Events in C#

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);

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

1 Tag ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

1 Tag ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

1 Tag ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

2 Tagen ago

Digitale Produkte „cyberfit“ machen

Vernetzte Produkte müssen laut Cyber Resilience Act über Möglichkeiten zur Datenverschlüsselung und Zugangsverwaltung verfügen.

2 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Das jüngste Update für Windows, macOS und Linux stopft drei Löcher. Eine Anfälligkeit setzt Nutzer…

2 Tagen ago