Lire ligne d'un GridView [Résolu]

Messages postés
41
Date d'inscription
jeudi 18 septembre 2003
Dernière intervention
15 juin 2012
- - Dernière réponse : adomarle
Messages postés
41
Date d'inscription
jeudi 18 septembre 2003
Dernière intervention
15 juin 2012
- 19 juin 2007 à 12:05
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
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Dernière intervention
23 janvier 2016
20
3
Merci
// 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]);
      }
   }
}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de yann_lo_san
Messages postés
52
Date d'inscription
vendredi 27 janvier 2006
Dernière intervention
20 août 2007
0
Merci
slt,
dansta gridview, la proprieté visible false donc tu ne veux pas afficher, mets çatrue. et executes pour voir le resultat.
Commenter la réponse de caudette
Messages postés
41
Date d'inscription
jeudi 18 septembre 2003
Dernière intervention
15 juin 2012
0
Merci
Salut,

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

Clem
Commenter la réponse de adomarle

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.