Bonjour,
J'ai crée une GridView comprenant 3 colonnes :
- 2 CommandField = 2 boutons image
- 1 BoundField (Clé)
La finalité est d'arriver à rediriger vers :
- Page1 lorsque j'appuie sur le 1er CommandField
- Page2 lorsque j'appuie sur le 2eme CommandField
NB : les liens Page1 & Page2 contiennent la valeur de la Clé (BoundField) suivant l'index de l'enregistrement selectionné (GridView.SelectedValue).
Voici le code executé à l'initialisation du GridView :
Lorsque j'intercepte le clic sur un des boutons (CommandField) du GridView, j'arrive à récupérer la valeur de la clé GridView.SelectedValue mais je n'arrive pas à determiner sur quel boton a eu lieu le clic.
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 // Initialisation GridView Suivi protected void GridView_Suivi_Init(object sender, EventArgs e) { GridView gv = (GridView)sender; gv.Columns.Clear(); cfTable = new CommandField(); cfTable.ButtonType = ButtonType.Image; cfTable.ShowSelectButton = true; cfTable.SelectText = "editer"; cfTable.SelectImageUrl = "~/images/select.gif"; gv.Columns.Add(cfTable); cfTable = null; cfTable = new CommandField(); cfTable.ButtonType = ButtonType.Image; cfTable.ShowSelectButton = true; cfTable.SelectText = "utilisateurs associés"; cfTable.SelectImageUrl = "~/images/icon_user.gif"; cfTable.HeaderStyle.Width = 20; gv.Columns.Add(cfTable); cfTable = null; bfTable = new BoundField(); bfTable.DataField = "CodeApplication"; bfTable.HeaderText = "Application"; bfTable.SortExpression = "CODE_APPLICATION"; bfTable.ReadOnly = true; bfTable.ItemStyle.Width = 205; gv.Columns.Add(bfTable); bfTable = null; }
Voici le code permettant d'intercepter le clic sur 2 evennements du GridView :
Carlos
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 protected void GridView_Suivi_RowCommand(object sender, GridViewCommandEventArgs e) { GridView gvtest1 = (GridView)sender; // Comment savoir quel bouton a reçu le clic // Si 1er CommandField -> Redirection Page1 } protected void GridView_Suivi_SelectedIndexChanged(object sender, EventArgs e) { GridView gvtest2 = (GridView)sender; // Comment savoir quel bouton a reçu le clic // Si 2eme CommandField -> Redirection Page2 }
Partager