Chargement dynamique User Control / Evenement OnClick non intercepté [Résolu]

Messages postés
6
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008
- - Dernière réponse : ludo_it
Messages postés
6
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008
- 30 sept. 2008 à 15:26
Bonjour,

Je suis en train de créer une application web avec un catalogue de produit.
Je voudrais lister mes produit de la manière suivante :
Categorie 1
   - produit 1
   - produit 2
Catégorie 2
   - produit 1
   ......

J'utilise un repeater qui boucle sur mes catégories et à l'intèrieur de celui ci, j'ai mis un place holder pour charger dynamiquement un user control qui contiendrait la liste des produit de la catégorie courante.

Je passe une propriété categorie à mon user control, et celui ci affiche les produits grâce à un repeater.

Mon problème est le suivant, à l'intérieur du repeater qui liste les produits, j'ai mis un bouton mais lorsque je clique dessus, je ne rentre pas dans l'évenement onclick.
J'ai aussi essayé avec l'évenement itemcommand du repeater mais impossible d'intercepter cet évenement.

Voici le code, cela sera peut être plus parlant:

page.aspx

usercontrol.ascx

 
         
         

usercontrol.ascx.cs

protected void i_imgbtnAjouterPanier_Click(object sender, ImageClickEventArgs e)
 {
      //je n'arrive jamais dans ce code en cliquant sur le bouton
}

Que dois-je rajouter pour accéder à cet évènement?

Merci d'avance pour vos réponse.
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
6
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
30 septembre 2008
3
Merci
Ok , j'ai consulté les liens mais je n'ai pas trouvé la solution à mon problème.
Cependant, en changeant le repeater par un datalist, l'évènement sur le bouton est enfin détecté ... ouf...je n'ai pas eu à cassé toute la mécanique déjà mise en place.

Merci tout de même pour ta réponse.

Dire « Merci » 3

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

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

Commenter la réponse de ludo_it
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
15
0
Merci
Bonjour,

comme je le repete souvent, il ne faut JAMAIS faire de controle dynamique à moins de connaitre parfaitement le cycle de vie d'une page ASP.net. La plupart du temps il y a moyen de s'en passer en utilisant un repeater/multiview/nested repeater/etc ....

Dans ton cas tu peux mettre un repeater dans un itemTemplate de ton repeater, puis lors de l'évenment itemdatabound de ton repeater parent tu bind le repeater enfant.

Pour mieux comprendre les controles dynamiques : http://blogs.developpeur.org/cyril/archive/2007/09/18/ajout-de-controle-dynamique-dans-une-page-asp-net.aspx

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
Commenter la réponse de jesusonline