GridView et ViewState

hudon77 Messages postés 127 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 29 mai 2014 - 13 mai 2009 à 19:55
hudon77 Messages postés 127 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 29 mai 2014 - 17 mai 2009 à 17:13
J'ai un gridview qui est completement dynamique, c'est a dire que je genere les colonne automatiquement car je ne sais jamais combien de colonne aura ma datatable. Ma datatable a une colonne Nom et prenom et ensuite ce sera toute des colonnes contenant un integer.  Les colonnes contenant des integer doivent etre bindé dans un Textbox donc dans l'évenement  rowdatabound de mon gridview je fais....

Dim

drv
As DataRowView =
CType(e.Row.DataItem, DataRowView)
For

i
As
Integer = 1
To drv.Row.ItemArray.Length - 1

   Dim

myTextBox
As
New TextBox()
   With myTextBox   .ID "myTextBox"   .Width 30

   .Text = drv.Item(i).ToString

End
With

e.Row.Cells(i).Controls.Add(myTextBox)

Next

Tout fonctionne parfaitement car j'ai des textbox partout... sauf que apres un postback donc si je change les valeur et que je click sur un bouton pour enregistrer les nouvelle valeur et bien j'aurai perdu tout mes textbox...

Nicolas!

4 réponses

titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
13 mai 2009 à 22:35
Bonjour,

a chaque postback il faut que tu recharges ta liste pour reconstruire ton gridview.
0
hudon77 Messages postés 127 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 29 mai 2014
14 mai 2009 à 02:59
oui mais si je met des textbox c'Est que je donne la chance a l'utilisateur de modifier les valeurs de ses textbox.... alors si je rebind a partir de ma datatable je ne peux pas recupéré ce que l'utilisateur vient de changer comme valeur...
0
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
14 mai 2009 à 23:12
bien quand l'utilisateur a saisit ses données, tu les envoies en base , tu recharge ta datatable et tu rebindes .
0
hudon77 Messages postés 127 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 29 mai 2014
17 mai 2009 à 17:13
Je sais ca. Sauf que lorsque que je fais ctype(e.row.findcontrol("myTextBox"),textBox) j'obtien la valeur nothing car le textbox a été généré par code donc il na pas été enregistré dans le viewstate dans le preInit de la page
0
Rejoignez-nous