Lire ligne d'un GridView

Résolu
Signaler
Messages postés
41
Date d'inscription
jeudi 18 septembre 2003
Statut
Membre
Dernière intervention
15 juin 2012
-
Messages postés
41
Date d'inscription
jeudi 18 septembre 2003
Statut
Membre
Dernière intervention
15 juin 2012
-
Bonjour,

J'ai un gridview avec des colonnes non affichées :
<

asp:GridView
ID= "GridView_Commande"
runat="server"
DataSourceID="DS_Test">

<Columns>





<asp:BoundField
DataField ="Nom_Conso"
HeaderText="Nom_Conso"
SortExpression="Nom_Conso"
/>

<asp:BoundField
DataField="Ref_Conso"
HeaderText="Ref_Conso"
SortExpression="Ref_Conso"
/>

<asp:BoundField
DataField="Prix"
HeaderText="Prix"
SortExpression="Prix"
/>

<asp:TemplateField
HeaderText="Quantit&#233;">

<ItemTemplate>

<asp:TextBox
ID="Quantite"
runat="server"
Width="50px"></asp:TextBox>

</ItemTemplate>

</asp:TemplateField>

</Columns>

</asp:GridView>

J'arrive à récupérer les données affichées mais pas mais données cachées :
for

(
int i = 0; i <
this.GridView_Commande.Rows.Count; i++){

GridViewRow gdRow =
this.GridView_Commande.Rows[i];

for (
int j = 0; j < gdRow.Cells.Count; j++){

TableCell cell = gdRow.Cells[j];

if (cell.Controls.Count != 0){

if (cell.Controls[1]
is
TextBox){

TextBox tb = (
TextBox)cell.Controls[1];this.Label.Text += tb.Text +

"--"}

}

else{

This.Label.Text += cell.Text +

"--";}

}

This.Label.Text +=

"
";

Ce code me permet bien d'afficher les données "affichées" par le gridview mais je n'arrive pas à récupérer le "id_consommable" et le "id_service".

Si quelqu'un a une idée, ce serait super !!!!

Merci d'avance,
Clem

3 réponses

Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
24
// essayes ça même si je ne vois pas ou sont tes textBox ?

TextBox tb 
= (TextBox)GridView_Commande.Rows[i].FindControl("LE_TEXT_BOX");

Mais dans ton cas tu peux utiliser le champs dataKeyName du gridView

DataKeyNames="id_consomable, id_service"
</gras> >

foreach ( GridViewRow gvr in this.gv )
{
       if( gvr.RowType == DataControlRowType.DataRow )
      {
         // Récupère les données  &
         // les dataKeys de la ligne
         
         int idConso = Convert.ToInt32(gv.DataKeys[gvr.RowIndex].Values[ 0 ]);
         int idServ  = Convert.ToInt32(gv.DataKeys[gvr.RowIndex].Values[1]);
      }
   }
}
Messages postés
52
Date d'inscription
vendredi 27 janvier 2006
Statut
Membre
Dernière intervention
20 août 2007

slt,
dansta gridview, la proprieté visible false donc tu ne veux pas afficher, mets çatrue. et executes pour voir le resultat.
Messages postés
41
Date d'inscription
jeudi 18 septembre 2003
Statut
Membre
Dernière intervention
15 juin 2012

Salut,

Mon but est que le champ ne soit pas visible par les utilisateurs.
Merci de ton aide.

Clem