Evenement SelectedIndexChanged sur DropDownList ajoutée dynamiquement à une page

Résolu
garcimor59 Messages postés 66 Date d'inscription mardi 18 juillet 2006 Statut Membre Dernière intervention 6 mars 2008 - 14 janv. 2008 à 14:44
garcimor59 Messages postés 66 Date d'inscription mardi 18 juillet 2006 Statut Membre Dernière intervention 6 mars 2008 - 15 janv. 2008 à 12:33
    Bonjour à tous,

Alors voilà, je vous expose mon probleme :

J'ajoute dynamiquement des DropDownList à page aspx de la maniére suivante :

ListState _testListState = new ListState(Convert.ToInt32(rCLE["ID_CLE"]), Convert.ToInt32(rCLE["ID_CLT"]), 0);
_testListState.SelectedValue = rCLE["CLTSTATE"].ToString();
_testListState.SelectedIndexChanged += new EventHandler(ChangeStateManagement);
HtmlTableCell _testcell = new HtmlTableCell();
testcell.Controls.Add(_testListState);
_lineKMAC.Cells.Add(_testcell);

ListState étant :

public sealed class ListState : DropDownList
    {
        public ListState(int idCLE, int idEntities, int entitiesType)
        {
             /*remplissage de la liste : je passe ça fonctionne trés bien*/

            this.AutoPostBack = true;
        }
    }

J'ai HtmlTable, ma DDL se trouve donc dans une HtmlTableCell, que j'ajoute selon besoin à ma HtmlTable.... (Cette création dynamique se fait dans le page_load)

Donc j'ai bien l'affichage de ma liste mais elle lorsque je selectionne un item, je n'arrive jamais à atteindre ma fonction "ChangeStateManagement"

Auriez-vous une petite idée?

Merci pour votre aide

4 réponses

garcimor59 Messages postés 66 Date d'inscription mardi 18 juillet 2006 Statut Membre Dernière intervention 6 mars 2008
15 janv. 2008 à 12:33
Re, bon aprés quelques heures de recherches j'ai trouvé une solution à mon probleme :

En effet, il y avait un if (!IsPostBack) qui trainait dans le load, donc forcement...
De plus je pensais avoir créer des noms uniques pour mes ListState, ce qui n'était pas le cas.

Maintenant ça fonctionne à merveille!

jesusonline, merci d'avoir pris le temps de venir jeter un oeil à mon pb, c'est trés sympa de ta part!!!
Je te dirais bien que je te rendrai l'appareil mais je doute que t besoin de mon aide un jour! :-p

Merci

++
3
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
14 janv. 2008 à 22:53
Bonsoir,

comme je l'ai répété, répété et encore répété :p il ne faut jamais utiliser des contrôles dynamique sauf si on connait parfaitement le cycle de vie des contrôles ASP.net ...

Dans la plupart des cas, il n'est pas nécessaire d'utiliser des contrôles dynamique. dans +95% des cas on peut utiliser un Multiview / Repeater / Panel / PlaceHolder / ...

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
0
garcimor59 Messages postés 66 Date d'inscription mardi 18 juillet 2006 Statut Membre Dernière intervention 6 mars 2008
15 janv. 2008 à 09:48
Merci.

Mais si je pense etre dans les 5 autres %, auriez-vous une solution à mon probleme?

Merci
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
15 janv. 2008 à 11:59
Exposes moi ton cas et je te dirais que faire, en tout cas ca passe par la création d'un custom control.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
0
Rejoignez-nous