Sommario:
Definizione - Cosa significa Gestore eventi?
Un gestore di eventi, in C #, è un metodo che contiene il codice che viene eseguito in risposta a un evento specifico che si verifica in un'applicazione.
I gestori di eventi vengono utilizzati nelle applicazioni di interfaccia utente grafica (GUI) per gestire eventi quali clic di pulsanti e selezioni di menu, generati dai controlli nell'interfaccia utente. Un singolo gestore eventi può essere utilizzato per elaborare eventi generati da più controlli. Un evento può essere associato a più gestori di eventi, che verranno invocati in modo sincrono quando si verifica anche. I gestori di eventi possono anche essere utilizzati per gestire eventi che segnalano i cambiamenti di stato di un oggetto ai client dell'oggetto.
Techopedia spiega Event Handler
Il modello di eventi C # si basa su un modello di "pubblicazione-sottoscrizione" in cui una classe (editore) attiva un evento, mentre un'altra classe (abbonato) riceve quell'evento. Un gestore eventi è l'abbonato che contiene il codice per gestire eventi specifici.
Ad esempio, un gestore eventi può essere utilizzato per gestire un evento che si verifica durante il clic di un pulsante di comando nell'interfaccia utente.
In C #, un evento è collegato al suo gestore da un delegato dell'evento. Per generare un evento e rispondere all'evento, i due elementi necessari sono il delegato che collega l'evento al suo metodo gestore e la classe che contiene i dati dell'evento. Aggiungendo l'istanza delegata all'oggetto evento utilizzando l'operatore di assegnazione addizione ('+ ='), il gestore eventi viene chiamato al verificarsi dell'evento associato.
La firma di un delegato del gestore eventi include due parametri che rappresentano l'istanza dell'oggetto che genera l'evento e l'oggetto che contiene i dati dell'evento. La firma di un metodo del gestore di eventi deve corrispondere a quella del delegato per quell'evento e con il tipo restituito come nullo. .NET framework fornisce un gestore di eventi integrato che può essere utilizzato nei casi in cui i delegati utilizzati differiscono solo per il nome del tipo e quindi possono ridurre il codice che deve essere mantenuto.
