Evenement en c#

Résolu
francesdereve Messages postés 75 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 6 août 2007 - 27 juin 2006 à 21:53
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 30 juin 2006 à 23:26
J'ai une forme qui contient 26 boutons mais l'evenement qu'on fait sur tous les boutton(click) realise la meme sequence d'action fill un dataset,le filtrer suivant le texte qui se trouve sur le bouton.Comment en c# je peux faire un seul evenement pour tous les 26 boutons sans avoir a faire les 26 evenements.c'est une forme qui suive l'exemple de la liste de contacts d'outlook.suivant la lettre sur laquelle on clique afficher tous les clients qui possede ce nom.mais mon seul c'est arriver à creer une seule methode pour les 26 boutons.

FD

5 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
27 juin 2006 à 23:21
Salut,
Suffit de spécifier le même eventHandler pour chaques events :

monButton1.Click += new EventHandler(myHandler);
monButton2.Click += new EventHandler(myHandler);
monButton3.Click += new EventHandler(myHandler);

etc...

Puis dans la méthode myHandler, tu peux récupérer le button qui a été cliqué en faisant un cast explicite, qqch du genre :

Button myButton = (Button)sender;

<hr size="2" /> VC# forever
=13319
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
28 juin 2006 à 10:04
affaire de goût... je préfère la syntaxe suivante à la place de Button myButton = (Button)sender;

Button myButton = sender as Button;

if (myButton == null)
    return;

comme ça, si sender n'est pas de type Button... myButton sera null et ca ne lèvera pas d'exception

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
3
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
28 juin 2006 à 10:45
Pareil.

::|The S@ib|:: MVP C#.NET
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
28 juin 2006 à 13:12
Euh, moi aussi à vrai dire.
Là je trouve que c'est quand même un cas spécial, dans le sens ou on être sûr que le sender sera un bouton, étant donné que c'est l'event click.
Maintenant, oui évidemment, on peut théoriquement recevoir n'importe quel object...

<hr size= "2" /> VC# forever
=13319
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
30 juin 2006 à 23:26
Salut,

On ne peut pas vraiment être sur que ce soit un bouton, on parlerais plutôt de contrôle. :-)
Et puis on doit malheureusement toujours partir du principe qu'il va bien y en avoir un un jour pour réussir à passer autre chose que ce qu'on attend ^^

/*
coq
MVP Visual C#
*/
0
Rejoignez-nous