Bonjour,
J'aimerais utiliser une pile pour stocker les opérations et pouvoir annuler étape par étape.
Tout d'abord, j'ai deux GridView et je permet de transférer d'un GridView à un autre avec deux boutons (-> et <-). Les deux sont liés à des datatables comme datasource. Les boutons permettent d'enlever et d'ajouter une Row dans mes datatables selon ceux qui ont été sélectionnées. Voici leur code :
Bouton Droit (->)
Bouton Gauche (<-)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Protected Sub btnDroit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDroit.Click Dim iCptSelect As Integer For iCptSelect = gvElementsCandidats.Rows.Count - 1 To 0 Step -1 If CType(gvElementsCandidats.Rows(iCptSelect).Cells(0).FindControl("chkSelect"), CheckBox).Checked = True Then CType(gvElementsCandidats.Rows(iCptSelect).Cells(0).FindControl("chkSelect"), CheckBox).Checked = False dtCouplages.Rows.Add(cbElements.SelectedValue, gvElementsCandidats.Rows(iCptSelect).Cells(1).Text, False, "", _ gvElementsCandidats.Rows(iCptSelect).Cells(2).Text) dtElements.Rows.RemoveAt(iCptSelect) End If Next Session("dvElements") = dtElements.DefaultView Session("dvCouplages") = dtCouplages.DefaultView MAJGridView() End Sub
Je me demandais qu'est-ce que je devrais stocker dans la pile pour pouvoir annuler étape par étape.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Protected Sub btnGauche_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGauche.Click Dim iCptSelect As Integer For iCptSelect = gvElementsSelect.Rows.Count - 1 To 0 Step -1 If CType(gvElementsSelect.Rows(iCptSelect).Cells(0).FindControl("chkSelect"), CheckBox).Checked = True Then CType(gvElementsSelect.Rows(iCptSelect).Cells(0).FindControl("chkSelect"), CheckBox).Checked = False dtElements.Rows.Add(gvElementsSelect.Rows(iCptSelect).Cells(1).Text, gvElementsSelect.Rows(iCptSelect).Cells(2).Text) dtCouplages.Rows.RemoveAt(iCptSelect) End If Next Session("dvElements") = dtElements.DefaultView Session("dvCouplages") = dtCouplages.DefaultView MAJGridView() End Sub
Merci,
Évans
Partager