Événements (Guide de programmation C#)Events (C# Programming Guide)

Les événements permettent à une classe ou à un objet de notifier d’autres classes ou objets quand quelque chose de significatif se produit.Events enable a class or object to notify other classes or objects when something of interest occurs. La classe qui envoie (ou déclenche) l’événement est appelée publieur et les classes qui reçoivent (ou gèrent) l’événement sont appelées abonnés.The class that sends (or raises) the event is called the publisher and the classes that receive (or handle) the event are called subscribers.

Dans une application C# Windows Forms ou web classique, vous vous abonnez à des événements déclenchés par des contrôles, comme des boutons et des zones de liste.In a typical C# Windows Forms or Web application, you subscribe to events raised by controls such as buttons and list boxes. Vous pouvez utiliser l’IDE Visual C# pour parcourir les événements publiés par un contrôle et sélectionner ceux que vous voulez gérer.You can use the Visual C# integrated development environment (IDE) to browse the events that a control publishes and select the ones that you want to handle. L’IDE permet d’ajouter automatiquement une méthode de gestionnaire d’événements vide et le code pour vous abonner à l’événement.The IDE provides an easy way to automatically add an empty event handler method and the code to subscribe to the event. Pour plus d'informations, voir Procédure : s’abonner et se désabonner d’événements.For more information, see How to: Subscribe to and Unsubscribe from Events.

Vue d'ensemble des événementsEvents Overview

Les événements ont les propriétés suivantes :Events have the following properties:

  • Le publieur détermine quand un événement est déclenché ; les abonnés déterminent l’action entreprise en réponse à l’événement.The publisher determines when an event is raised; the subscribers determine what action is taken in response to the event.

  • Un événement peut avoir plusieurs abonnés.An event can have multiple subscribers. Un abonné peut gérer plusieurs événements provenant de plusieurs publieurs.A subscriber can handle multiple events from multiple publishers.

  • Les événements qui n’ont aucun abonné ne sont jamais déclenchés.Events that have no subscribers are never raised.

  • Les événements sont généralement utilisés pour signaler des actions de l’utilisateur, comme les clics de bouton ou les sélections de menu dans les interfaces utilisateur graphiques.Events are typically used to signal user actions such as button clicks or menu selections in graphical user interfaces.

  • Quand un événement a plusieurs abonnés, les gestionnaires d’événements sont appelées de façon synchrone quand un événement est déclenché.When an event has multiple subscribers, the event handlers are invoked synchronously when an event is raised. Pour appeler des événements de façon asynchrone, consultez Calling Synchronous Methods Asynchronously.To invoke events asynchronously, see Calling Synchronous Methods Asynchronously.

  • Dans la bibliothèque de classes .NET Framework, les événements sont basés sur le délégué EventHandler et la classe de base EventArgs.In the .NET Framework class library, events are based on the EventHandler delegate and the EventArgs base class.

Pour plus d'informations, voir :For more information, see:

Spécification du langage C#C# Language Specification

Pour plus d’informations, consultez Événements dans la Spécification du langage C#.For more information, see Events in the C# Language Specification. La spécification du langage est la source de référence pour la syntaxe C# et son utilisation.The language specification is the definitive source for C# syntax and usage.

Delegates, Events, and Lambda Expressions (Délégués, événements et expressions lambda) dans C# 3.0 Cookbook, Third Edition: More than 250 solutions for C# 3.0 programmersDelegates, Events, and Lambda Expressions in C# 3.0 Cookbook, Third Edition: More than 250 solutions for C# 3.0 programmers

Delegates and Events dans Learning C# 3.0: Master the fundamentals of C# 3.0Delegates and Events in Learning C# 3.0: Master the fundamentals of C# 3.0

Voir aussiSee also