9. Les événements
Pages 58 à 62
Citer ce chapitre
- PICHAUD, Christophe,
- Pichaud, Christophe.
- Pichaud, C.
Citer ce chapitre
- Pichaud, C.
- Pichaud, Christophe.
- PICHAUD, Christophe,
Un événement (event) c’est quoi ? Prenons l’exemple d’une méthode qui se nomme Click sur un bouton graphique dans un formulaire WinForms en vue de réaliser une action. Un événement présente les caractéristiques suivantes :
► une méthode peut s’abonner à un event ;
► une méthode peut se désabonner d’un event ;
► les méthodes enregistrées seront notifiées quand l’event se déclenche.
Le modèle des events du CLR est basé sur les delegates. Un delegate permet d’appeler une callback : c’est un pointeur de fonction.
Un event produit des appels de méthodes en passant des paramètres. Mais pour cela, il faut définir le type de données ainsi :
La classe hérite de EventArgs.
Le delegate System.EventHandler est défini comme suit :
Le prototype de la méthode est le suivant :
Voici comment on lève l’event :
On définit une méthode d’extension qui permet d’appeler une méthode Raise avec l’argument PersonArgs ; c’est élégant.
Voici comment on lève l’événement :La classe PMHandler et sa méthode Process() réalisent les opérations suivantes :
► création d’un objet PersonManager ;
► enregistrement du delegate ;
► appel de la méthode qui déclenche l’event ;
► et donc, appel du delegate qui est enregistré
avec les paramètres…
Date de mise en ligne : 01/06/2022
Ce chapitre est en accès conditionnel
Acheter cet ouvrage
17,98 €