Nun deklarieren Sie für das Ereignis OnPrime einen Delegaten in der Klasse. Diese Deklaration kann an einer beliebigen Stelle im Klassenmodul eingefügt werden. Beachten Sie, dass Sie nicht unbedingt einen Delegaten erstellen müssen, vor allem bei Ereignis-Methoden, deren Signatur dem integrierten System.EventHandler-Delegat entspricht. Es ist jedoch sinnvoll, für jedes spezielle Ereignis einen Delegaten zu deklarieren. In unserem Beispiel ist dies notwendig, da zu der Signatur ein Parameter (die gefundene Primzahl) hinzugefügt wird.
Hier die Deklaration für den Delegaten:
public delegate void OnPrimeEventHandler (object sender, System.EventArgs e, long num);
Weisen Sie dann den Delegaten dem Ereignis zu:
public Ereignis OnPrimeEventHandler OnPrime;
Das Klassenmodul ist nun komplett. Allerdings führt es vor der Schaffung des Codes in der Empfängerklasse noch keine sinnvollen Vorgänge aus. Wenn Sie das Projekt ausführen, dürften jedoch keine Syntaxfehler mehr vorliegen. Listing D enthält den vollständigen Code für das Klassenmodul.
Der Ereignis-Handler
Kehren wir nur zu der Empfängerklasse zurück, die zufällig eine Form-Klasse ist (was, wie bereits erwähnt, nicht unbedingt der Fall sein muss), um einen Ereignis-Handler hinzuzufügen. Dieser sieht wie folgt aus:
private void Class1_OnPrime (object sender, System.EventArgs e, long theNum){ }
Benachrichtigung an die auslösende Klasse
Fügen Sie nun eine Benachrichtigung zu der Instanz des Klassenmoduls hinzu, so dass der im Ereignis-Handler befindliche Code verarbeitet wird, wenn das Ereignis ausgelöst wurde. Zuvor muss jedoch erst eine Instanz der Class1 in der Form-Klasse eingerichtet werden. Erstellen Sie anschließend eine Schaltfläche mit der Bezeichnung btnDoPrimeThing. Dann fügen Sie den im Klick-Ereignis der Schaltfläche auszuführenden Code ein und zeigen den Rest in einem mehrzeiligen Textfeld an.
Listing E zeigt den Code für das Klick-Ereignis, der eine Instanz von Class1 erstellt und das Ereignis in der Klasse anweist, den Ereignis-Handler zu benachrichtigen, wenn das Ereignis ausgelöst wird.
Vernetzte Produkte müssen laut Cyber Resilience Act über Möglichkeiten zur Datenverschlüsselung und Zugangsverwaltung verfügen.
Das jüngste Update für Windows, macOS und Linux stopft drei Löcher. Eine Anfälligkeit setzt Nutzer…
Zwei von Google-Mitarbeitern entdeckte Schwachstellen werden bereits aktiv gegen Mac-Systeme mit Intel-Prozessoren eingesetzt. Sie erlauben…
Die Hintermänner haben es unter anderem auf Daten von Facebook-Geschäftskonten abgesehen. Opfer werden über angebliche…
Bis 2027 werden 90 Prozent der Unternehmen eine Hybrid-Cloud-Strategie umsetzen.
Apple belegt in der Statistik von Counterpoint die ersten drei Plätze. Samsungs Galaxy S24 schafft…