[VB.NET]Probleme datagrid avec checkbox et pagination
Bonjour a tous,
j'ai un gros probleme voilà
Je dispose d un datagrid avec une colonne de checkbox. Ce datagrid est paginé. Lorsque par exemple je choisi plusieurs checkboxs sur plusieurs lignes (par exemple sur la page 1),puis je clique sur la page 2 en choisissant d autres chexkboxs.
Lorsque je reviens sur la page 1, les checkboxs que j avais cochée ne le sont plus...par contre sur la page 2 , les checkbox que j'avais cochées le sont bien.
j'ai mis mes checkbox cochés dans un tableau,mais c'est comme ci seules les checkbox de la dernière page étais cochées
Quelqu un aurait une idée pour que les checkboxs cochés de toutes les pages le restent car là je séche :oops:
Merci d avance
je me suis inspiré de ce post mais sans succés:
http://www.developpez.net/forums/showthread.php?t=41551
voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not Page.IsPostBack Then
' recupére le cache
dataset = Cache("dscache")
'Rempli le datagrid
DataGrid1.DataSource = dataset
DataGrid1.DataBind()
End If
'Procédure de pagination
Private Sub datagrid_pageindexchanged(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles DataGrid1.PageIndexChanged
Dim m As Integer
Dim oDGItem As DataGridItem
m = 0
'recupere les lignes sélectionnées
For Each oDGItem In DataGrid1.Items
If CType(oDGItem.FindControl("CheckBox1"), CheckBox).Checked then
'je les sctokes dans un tableau d'entier tbint
m += 1
ReDim Preserve tbint(2, m)
tbint(1, m) = oDGItem.Cells(1).Text()
tbint(2, m) = 1
End If
Next
'pagine
DataGrid1.CurrentPageIndex = e.NewPageIndex
Afflist()
'recoche les checkbox
Dim j As Integer
For j = 1 To tbint.GetUpperBound(1)
For Each oDGItem In DataGrid1.Items
If oDGItem.Cells(1).Text = tbint(1, j) Then CType(oDGItem.FindControl("CheckBox1"),CheckBox).Checked() = True
End If
Next
Next |
Si quelqu'un vois je lui serait éternellement reconnaissant, Merci:roll: