Partager via


Déclenchement de plusieurs événements

Si votre classe déclenche plusieurs événements et si vous les programmez comme indiqué dans Déclenchement d'un événement, alors le compilateur génère un champ par instance de délégué d'événement. En cas de nombre élevé d'événements, le coût du stockage d'un champ par délégué risque de ne pas être acceptable. Dans ce cas, le .NET Framework fournit une construction appelée propriétés d'événement (événements personnalisés dans Visual Basic 2005) que vous pouvez utiliser avec une autre structure de données (de votre choix) pour stocker les délégués d'événement.

Les propriétés d'événement se composent de déclarations d'événement accompagnées d'accesseurs d'événement. Les accesseurs d'événement sont des méthodes que vous définissez pour que des instances de délégué d'événement puissent être ajoutées à la structure des données de stockage ou en être supprimées. Notez que les propriétés d'événement sont plus lentes que les champs d'événement, car chaque délégué d'événement doit être récupéré avant de pouvoir être appelé. Le compromis réside entre la mémoire et la vitesse. Si votre classe définit plusieurs événements qui ne sont pas souvent déclenchés, vous pouvez alors implémenter des propriétés d'événement. Les contrôles Windows Forms et les contrôles serveur ASP.NET utilisent des propriétés d'événement à la place des champs d'événement.

Voir aussi

Tâches

Comment : gérer plusieurs événements à l'aide des propriétés d'événements

Comment : déclarer des événements personnalisés pour économiser la mémoire (Visual Basic)

Référence

System.ComponentModel.EventHandlerList

System.Web.UI.Control.Events

Autres ressources

Gestion et déclenchement d'événements