20 lines
712 B
C#
20 lines
712 B
C#
using System;
|
|
|
|
namespace _15_Delegates
|
|
{
|
|
// Publisher des Events / Observable
|
|
internal class Button
|
|
{
|
|
public event EventHandler? OnClick; // Um ein Event zu deklarieren wird das 'event'-Schlüsselwort verwendet.
|
|
|
|
public string Text { get; set; }
|
|
|
|
// Wird auf einen Button geklickt, wird diese Methode ausgeführt:
|
|
public void Click()
|
|
{
|
|
Console.WriteLine("Es wurde auf den Button geklickt...");
|
|
OnClick?.Invoke(this, EventArgs.Empty); // Das Event wird nach einer Prüfung auf Null mit Invoke() ausgelöst.
|
|
// Eine Null-Prüfung ist bei Events wichtig, da es sonst zu NullReferenceExceptions kommen kann.
|
|
}
|
|
}
|
|
} |