Salut.
Pour une gridview; comment récupérer les valeurs des cellules d’une ligne sélectionnée ?
Merci!
Salut.
Pour une gridview; comment récupérer les valeurs des cellules d’une ligne sélectionnée ?
Merci!
Bonjour,
voici un peut de code qui peut vous aider :
remplace le 2 par le numero de cellule souhaité.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { GridViewRow row = GridView1.Rows[GridView1.SelectedIndex]; string strValCell = row.Cells[2].Text; }
Merci AJemni
J'ai essayé ton code ainsi que le suivant :
Mais je ne récupère aucune valeur malgré que la grid contient les données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public void GridView1_SelectedIndexChanged(Object sender, EventArgs e) { TextBox1.Text = GridView1.SelectedRow.Cells[1].Text; }
les colonnes de ta grille sont elles des TemplateField?
oui AJemni :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <Columns> <asp:TemplateField> <EditItemTemplate> <asp:TextBox ID="idp" runat="server" Text='<%# Bind("id_produit") %>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="idpl" runat="server" Text='<%# Bind("id_produit") %>'></asp:Label> </ItemTemplate> </asp:TemplateField>
Alors il faut utilser le "FindControl" et puis un cast selon le type de ton control puis tu recupere la valeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 TextBox1.Text = (GridView1.SelectedRow.Cells[1].FindControl("idDeTonControl") as TextBox).Text;
Merci
avec ton code j'ai ce message :
La référence d'objet n'est pas définie à une instance d'un objet.
mais si je faisj'ai toujours aucune donnée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public void GridView1_SelectedIndexChanged(Object sender, EventArgs e) { TextBox tb = GridView1.SelectedRow.FindControl("idp") as TextBox; if (tb != null) TextBox1.Text = tb.Text; else TextBox1.Text = "aucune donnée"; //TextBox1.Text = (GridView1.SelectedRow.Cells[1].FindControl("idp") as TextBox).Text; }
Desolé badi3a82, j'ai mal vu ton code,
au lieu de textBox essay Label car c'est lui qui contient l'information lors de selection
Partager