Interaction entre 2 elements créée dynamiquement [Résolu]

Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
- - Dernière réponse : nicotie
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
- 21 juil. 2010 à 10:41
bonjour les artistes du c#, je débute ou presque , voici les données du probleme,je crée dynamiquement une texte box et un bouton lors du click sur un autre bouton( pivot dans l'exemple). je veux ecrire "prout" dans la textbox en appuyant sur le 2eme bouton qui a été créé dynamiquement, comment que je fait y?

private void button_pivot_Click(object sender, EventArgs e)
{
TextBox txt_rech = new TextBox(); //je crée ma textbox
onglet.Controls.Add(txt_rech); // je l'ajoute a mon onglet

Button btn_rech = new Button();//je crée mon bouton
onglet.Controls.Add(btn_rech); // je l'ajoute a mon onglet
btn_rech.Click += new EventHandler(btn_rech_Click); //je declare l'evenement
}

protected void btn_rech_Click(object sender, EventArgs e)
{
???????????? qu'est ce que je met pour ecrire dans la textbox "txt_rech"??????
}



merci d'avance vous m'enleverez une poutre du pied
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
13
3
Merci
Plusieurs solutions :

1 - (la plus simple) : Mettre la textbox associée au bouton dans le Tag du bouton :

btn_rech.Tag = txt_rech;

puis dans ton handler :
TextBox txt_rech = (TextBox)((Button)sender).Tag;

2 - Stocker une map de tes buttons et textbox en membre :

Dictionary m_Ctrls = new Dictionary();

Dans la méthode de création dynamique des controls :
m_Ctrls.Add(btn_rech, txt_rech);

Dans le handler de click sur le bouton :
m_Ctrls[(Button)sender].Text = "prout";

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 206 internautes nous ont dit merci ce mois-ci

Commenter la réponse de leprov
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
3
Merci
encore merci ca marche impec!!!!!!!!!!!!!!!!!!!!!

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 206 internautes nous ont dit merci ce mois-ci

Commenter la réponse de nicotie
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
3
Merci
ben me revoila, cela fonctionne pour 2 objet mais si on en a plusieurs, un bouton, un textbox et une richtextbox, partant du meme exemple, j'ecrit un truc dans le txtbox et quand j'appuie sur le bouton ca l'ecrit dans la richtextbox? sachant que tout ces controls ont été créé dynamiquement bien sur, sinon c pas drole. me suis cassé la tete toute la journnée hier, fouiller sur le web pas trouvé. (pas facile de trouver un truc qu'on connait meme pas le nom) , merci d'avance aux aficionados du C#

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 206 internautes nous ont dit merci ce mois-ci

Commenter la réponse de nicotie
Messages postés
6
Date d'inscription
vendredi 16 janvier 2009
Statut
Membre
Dernière intervention
6 août 2010
0
Merci
mon problème c'est que je veut quand j'appuie sur le bouton je commence directement écrire sur le textbox
quelqu'un peut m'aider???
Commenter la réponse de gattouso598
Messages postés
10
Date d'inscription
mercredi 17 mars 2010
Statut
Membre
Dernière intervention
29 juillet 2010
0
Merci
mec tu viens pourrir mon post avec un autre probleme et en plus on comprends rien c'est meme pas francais ce que tu ecrit
Commenter la réponse de nicotie