2012-10-11 4 views
0

J'ai un Gridview qui affiche certaines données. Ce que j'essaie de faire, c'est si le nom de la commande est edit etc pour prendre l'action appropriée.Gridview Cell Value

J'ai réussi à obtenir le nom de la commande en faisant une instruction If sous l'événement RowCommand pour la vue de données qui m'a permis de prendre l'action appropriée sur chaque commande.

Le problème que j'ai rencontré est d'essayer d'obtenir la valeur SELECTED Rows d'une certaine colonne en fonction de la commande qui a été sélectionnée. Donc, si un utilisateur clique sur modifier à la ligne 15, alors je voudrais obtenir la valeur col 5 de la ligne 15. Si l'utilisateur cliquait sur la ligne 10, il s'agirait de la ligne 10, de la colonne 5, etc.

Comment faire cela sous l'événement RowCommand OU de toute autre manière pour obtenir ce qui précède?

Merci

Répondre

0

Je viens de lire cette question, mais si vous ne l'avez figured encore sur ce que vous pouvez alors le faire passer à votre fichier ASPX et définir « OnRowEditing » sous gridview. Revenez ensuite au code derrière le fichier et faire quelque chose comme ceci:

protected void gvEvents_Edit(object sender, GridViewEditEventArgs e) 
    { 

     //Set the edit index. 
     gvEvents.EditIndex = e.NewEditIndex; 
     DataTable dt = Session["dtEvents"] as DataTable; 
     //Bind data to the GridView control. 

     gvEvents.DataSource = Session["dtEvents"]; 
     gvEvents.DataBind(); 
    } 

Vous devez également définir OnRowUpdating et OnRowCancelingEdit et le code mis pour eux dans votre code derrière. Ceci est ce qui va être sous OnRowCancelingEdit

protected void gvEvents_cancEdit(object sender, GridViewCancelEditEventArgs e) 
    { 
     //Reset the edit index. 
     gvEvents.EditIndex = -1; 
     //Bind data to the GridView control. 
     DataTable dt = Session["dtEvents"] as DataTable; 

     gvEvents.DataSource = Session["dtEvents"]; 
     gvEvents.DataBind(); 

    }