Comment s'abonner à des événements en C#
Voici un résumé des différentes manières de s’abonner à un événement, via Visual Studio ou par programmation.
1. Depuis Visual Studio, la méthode est assez simple : dans la partie supérieure de la fenêtre Propriétés, cliquez sur le bouton Événements et double-cliquez sur l’événement que vous souhaitez créer.
2. Par programmation, en développant une méthode dont la signature correspond à la signature du délégué pour l’événement. L’avantage est que Visual Studio nous aide pour retrouver la signature (via += et Tab).
Button1.Click += new EventHandler(Button1_Click);
private void Button1_Click(object sender, EventArgs e)
{
...
}
3. Par programmation, en utilisant les méthodes anonymes. L’avantage est de pouvoir rapidement s’attacher à un événement et d’interagir avec les variables définies dans la méthode englobante… mais il est nécessaire de connaître la signature de l’événement et Visual Studio ne nous aide pas !
Button1.Click += delegate(object sender, EventArgs e)
{
...
};
4. Par programmation, en utilisant les expressions Lambda. Dans ce cas également, on peut s’attacher à un événement rapidement mais sans devoir connaître la signature de l’événement. On spécifie les deux arguments (sender et e) et le compilateur détermine les types d’objets associés.
Button1.Click += (sender, e) =>
{
...
};