Evénement de click sur un UserControl

Signaler
Messages postés
2
Date d'inscription
vendredi 10 janvier 2003
Statut
Membre
Dernière intervention
16 août 2006
-
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
-
    Bonjour à tous,

Je développe mon premier site web en asp 2.0 avec VS2005. Mais j'ai un problème sur des userControl. En effet, dans ma page je crée des instances d'un UserControl dynamiquement par le code-behind. Ce UserControl est composé d'une image, d'un linkbutton et d'un label. J'ai créé des événements pour la gestion du click sur le linkbutton et l'image. Ces événements fonctionnent très bien lorsque je place une instance par glisser-déposer.
De même ces événements fonctionnent lorsque je crée mes userControl par programmation sans rien modifier sur la page.
Mais à partir du moment où je change quelque chose sur la page, les événements de click ne sont plus récupérés.
Par exemple, j'ai une dropdownListe qui me permet de classer les instances (exemple : créées par ordre alphabétique du linkbutton). Si j'utilise cette dropdownliste, je supprime les userControls créés et je le recrée. Mais ensuite si je clique sur une instance de ces UserControl, la page se recharge mais ne prend pas en compte l'événement de click.
Pourtant je créé bien mes instances dans le init (au départ uniquement en non postback mais je me suis rendu compte que si je faisais ça le click ne marchait pas!). Puis je les supprime si j'ai besoin de changer l'ordre ou de passer à la page suivante et je le recrée.

Avez vous une idée car de mon côté je ne sais plus comment m'en sortir. J'ai fait de nombreuses recherches sur le net et sur ce forum mais aucune des métodes proposées ne fonctionne

1 réponse

Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
37
Salut

Si tu es en vb, c'est un peu logique
Il faut declarer des user control avec le withevent.
et de mettre le Handles Button1.Click
a la fin de la fonction

et de gerer les abonnements de facon dynamiques
C'est a dire
addhandler ..... adressof
AddHandler Button1.Click, AddressOf BouttonClique

Attention les deux methodes si elles sont utilisées en meme temps.
La focntion est appellées deux fois, si mes souvenirs sont bons ;-)

voila