Bonjour
J'ai un Repeater qui contient plusieurs DropDownList dans ItemTemplate. Il y a également un bouton qui permet d'ajouter des lignes dans le repeater.
J'ai enfin un bouton Supprimer dans chaque ligne qui supprime la ligne en question.
Dans le code behind, je commence par définir la source du repeater sur une liste d'objets qui contiennent eux aussi des listes. (la liste d'objet pour le repeater et les sous-liste pour les dropdownlist)
dans les evenements ItemCreated, je remplie les dropdownlist à partir des sous-liste de l'objet de la ligne concernée. (j'espère que c'est clair).
entre chaque chargement, j'enregistre ma liste d'objet dans une variable session.
Dans la methode d'ajout, j'ajoute un objet à ma liste et je fais un DataBind().
Dans la methode de suppression, je retrouve la ligne à partir de "sender", je supprime l'objet correspondant et fait un DataBind().
Ça marche bien, sauf qu'à chaque fois j'ajoute ou supprime une ligne, je perd les valeurs sélectionnées des autres lignes.
Par contre un rechargement de la page pour autre chose conserve les valeurs dans les dropdownlist.
J'ai essayé de les récuperer dans le POST et de les réaffecter, mais le code commence à faire usine à gaz pour quelque chose de banal, de plus les clientID n'ont pas toujours l'air d'être identique.
Comment puis-je faire en sorte de toujours garder les valeurs selectionnées quelque soit l'évenement ?
Si possible de manière simple, gérée par le framework.
Merci
Rémi
Partager