In C#, un evento è un meccanismo che consente di notificare il verificarsi di un'azione, come un clic su un pulsante, un cambiamento di stato o qualsiasi altro tipo di evento, a una o più classi che si sono iscritte (subscribed) all'evento.

Un evento può essere:

Esempi comuni di eventi:

Componenti degli eventi

Un evento coinvolge due principali componenti:

  1. Event Sender (Mittente dell'evento): la classe che genera l'evento.
  2. Subscribers (Sottoscrittori): le classi che ricevono e gestiscono l'evento.

L'event sender non conosce in anticipo quali oggetti risponderanno all'evento. Quando un evento si verifica, deve essere eseguito del codice in risposta all'azione. Il codice eseguito dopo il verificarsi di un evento è chiamato event handler.

Esempio:

Delegati e Event Handler

In C#, gli event handler vengono associati agli eventi tramite i delegati.