Bonjour,

Je crée une GridView de façon dynamique, je lui "définit" les méthodes à appeler en cas d'évènements. Toutes sont bien appelé sauf "OnRowUpdating" et "OnRowUpdated". Lorsque je rentre dans le "mode" edit, et que je clique Update l'évènement uniquement appelé est OnRowEditing. Comment ça se fait ?

Je ne sais pas si j'ai mal fait quelque chose ...

Voici mon code :

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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

//Création de la GridView
            GridView grid = new GridView();
            CommandField commandColumn;

            commandColumn = new CommandField();
            commandColumn.ButtonType = ButtonType.Link;
            commandColumn.EditText = "Edit";
            commandColumn.UpdateText = "Update";
            commandColumn.CausesValidation = true;
            commandColumn.ShowEditButton = true;
            grid.Columns.Add(commandColumn);

            .... // Définitions des autres colonnes

            grid.Enabled = true;
            grid.AutoGenerateColumns = false;
            grid.Attributes.Add("runat", "server");
            grid.RowEditing += OnAlternativeEditing;
            grid.RowUpdating += OnAlternativeUpdating;
            grid.RowCancelingEdit += OnAlternativeCanceling;
            grid.RowUpdated += OnAlternativeUpdated;

            Page.Form.Controls.Add(grid);

//Page_Load
            if (!IsPostBack)
            {
                initGroups();
                if (gv_Groups.Rows.Count > 0)
                    gv_Groups.SelectedIndex = 0;

            }
            FillAlternativeGrid(); //Création et remplissage de la grid

//OnRowEditing
            ((GridView)sender).EditIndex = e.NewEditIndex;
            ((GridView)sender).DataBind();

Merci d'avance