Ereignisse (C#-Programmierhandbuch)
Ereignisse aktivieren eine Klasse oder ein Objekt, um Informationen über Aktionen von Interesse an andere Klassen oder Objekte zu übermitteln. Die Klasse, die das Ereignis sendet (oder auslöst), wird als Herausgeber bezeichnet und die Klassen, die das Ereignis empfangen (oder behandeln), werden als Abonnenten bezeichnet.
In einer typischen C# Windows Forms- oder -Webanwendung abonnieren Sie Ereignisse, die von Steuerelementen wie Schaltflächen und Listenfeldern ausgelöst wurden. In der integrierten Entwicklungsumgebung (IDE) von Visual C# können Sie die Ereignisse durchsuchen, die ein Steuerelement veröffentlicht, und diejenigen auswählen, die Sie behandeln möchten. Die IDE fügt automatisch eine leere Ereignishandlermethode und den Code zum Abonnieren des Ereignisses hinzu. Weitere Informationen finden Sie unter Gewusst wie: Abonnieren von Ereignissen und Kündigen von Ereignisabonnements (C#-Programmierhandbuch).
Übersicht über Ereignisse
Ereignisse verfügen über folgende Eigenschaften:
Der Herausgeber bestimmt, wann ein Ereignis ausgelöst wird; die Abonnenten bestimmen, welche Maßnahme als Reaktion auf das Ereignis ergriffen wird.
Ein Ereignis kann mehrere Abonnenten haben. Ein Abonnent kann mehrere Ereignisse von mehreren Herausgebern behandeln.
Ereignisse, die keine Abonnenten haben, werden nie ausgelöst.
Ereignisse dienen normalerweise zur Signalisierung von Benutzeraktionen wie das Klicken auf Schaltflächen oder Auswählen von Menüs in der grafischen Benutzeroberfläche.
Wenn ein Ereignis mehrere Abonnenten hat, werden die Ereignishandler synchron aufgerufen, wenn ein Ereignis ausgelöst wird. Informationen zum asynchronen Aufrufen von Ereignissen finden Sie unter Asynchrones Aufrufen von synchronen Methoden.
In der .NET Framework-Klassenbibliothek basieren Ereignisse auf dem EventHandler-Delegaten und der EventArgs-Basisklasse.
Verwandte Abschnitte
Weitere Informationen finden Sie unter:
Gewusst wie: Auslösen von Basisklassenereignissen in abgeleiteten Klassen (C#-Programmierhandbuch)
Gewusst wie: Implementieren von Schnittstellenereignissen (C#-Programmierhandbuch)
Gewusst wie: Implementieren benutzerdefinierter Ereignisaccessoren (C#-Programmierhandbuch)
C#-Programmiersprachenspezifikation
Weitere Informationen finden Sie in der C#-Sprachspezifikation. Die Sprachspezifikation ist die verbindliche Quelle für die Syntax und Verwendung von C#.
Enthaltene Buchkapitel
Delegates, Events, and Lambda Expressions in C# 3.0 Cookbook, Third Edition: More than 250 solutions for C# 3.0 programmers
Delegates and Events in Learning C# 3.0: Master the fundamentals of C# 3.0
Siehe auch
Referenz
Delegaten (C#-Programmierhandbuch)
Konzepte
Weitere Ressourcen
Erstellen von Ereignishandlern in Windows Forms
Multithreadprogrammierung mit dem ereignisbasierten asynchronen Muster