Bonjour tout le monde,
je souhaiterai associer un evenment click a des boutons qui sont créés au fur et a mesure qu'on parcourt une boucle while.Je voudrai si je clique sur le bouton qu'il me recupére le text d'une textBox qui lui est crée aussi dans la meme boucle.
mon bout de code est ci dessous je ne sais pas comment faire pour associer l'evenement a un bouton qui est créé dans une boucle.
while
Tag c'est pas une collection : ) juste un référence de type object, tu peux donc tout y mettre, par exemple un tableau de contrôles. Tu peux aussi y mettre la variable i et réécrire l'évènement comme ça :
private void Button_Click( object sd, EventArgs e )
{
Button b = ( Button )sd;
int index = ( int )b.Tag;
MessageBox.Show( this.Controls[ "TextBox" + index ].Text );
MessageBox.Show( this.Controls[ "ComboBox" + index ].Text );
}
Salut,
Tu peux par exemple faire qu'ils aient tous le même eventHandler, et ensuite tu fais un switch sur le sender pour savoir quel bouton a envoyé l'event.
VC# forever
Vous n’avez pas trouvé la réponse que vous recherchez ?
salut c'est encore moi,
si je crée un autre contrôle, un comboBox et je veux recupérer le text de l'item selectionné et que si c'est par exple OK,je recupere le text associé au textBox.
J'ai essayé mais ça ne marche pas j'ai fais deux fois un tag sur le bouton:
b.Tag = tb;
b.Tag=cb;
et dans la methode button_click
private
void Button_Click(
object sd,
EventArgs e ){
Button b = (
Button )sd;
TextBox tb = (
TextBox )b.Tag;
ComboBox cb = (
ComboBox)b.Tag;
if
(cb.SelectedText ==
"OK"){
MessageBox.Show(tb.Text);}
}
Mais j'ai une exeception.comment je dois faire pour pouvoir associer les deux controle a l'avenment click btuon
salut Bidou ,
Est ce que tu aurais un exemple d'une classe qui encapsule deux controles car je pense que c'est la meilleure solution puisque les deux contrôles interviennent dans le meme event.