2010-03-10 7 views
0

J'ai un GridviewComment sélectionner la ligne particulière dans un gridview

<asp:GridView ID="GridView1" runat="server" Width="400px" AutoGenerateColumns="false" 
      OnSelectedIndexChanged="GridView1_SelectedIndexChanged1"> 
      <Columns> 
       <asp:TemplateField> 
        <ItemTemplate> 
         <asp:CheckBox ID="CheckBox1" runat="server" /> 
        </ItemTemplate> 
       </asp:TemplateField> 
       <asp:TemplateField HeaderText="name"> 
        <ItemTemplate> 
         <asp:Label ID="lblStudentName" runat="server" Text='<%# Eval("StudentName") %>'></asp:Label> 
        </ItemTemplate> 
       </asp:TemplateField> 
       <asp:TemplateField HeaderText="Address"> 
        <ItemTemplate> 
         <asp:Label ID="lblResidentialAddress" runat="server" Text='<%# Eval("ResidentialAddress") %>'></asp:Label> 
        </ItemTemplate> 
       </asp:TemplateField> 

      </Columns> 
     </asp:GridView> 

et je reçois la valeur binded au gridview

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!Page.IsPostBack) 
    { 

     DataTable dt = new DataTable(); 
     dt = objdb.GetData("Getsamples", new object[] { }); 
     ViewState["CurrentTable"] = dt; 
     GridView1.DataSource = dt; 

     GridView1.DataBind(); 

    } 
} 

protected void GridView1_SelectedIndexChanged1(object sender, EventArgs e) 
{ 
    Response.Write(GridView1.SelectedRow.Cells[0].Text); 
    // string selectedText = ((Label)GridView1.SelectedRow.FindControl("lblStudentName")).Text; 

    // Response.Write(selectedText); 
} 

je ne peux pas en mesure de retrive la ligne où la case est cochée Comment sélectionner une rangée particulière dans un gridview, et en fonction de la sélection je dois retirer le 'Name' et passer cela comme un paramètre à obtenir, une autre grille liée à la ligne que j'ai sélectionné.? ??

toute aide ...

Répondre

0

Essayez d'utiliser un autre événement - OnSelectedIndexChanging (http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.selectedindexchanging.aspx)

Il a GridViewSelectEventArgs (http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridviewselecteventargs_members.aspx) transmis au gestionnaire d'événements qui a NewSelectedIndex propriété.

Votre gestionnaire d'événements ressemblera:

void GridView1_SelectedIndexChanging(Object sender, GridViewSelectEventArgs e) 
{ 
    GridViewRow row = GridView1.Rows[e.NewSelectedIndex]; 
} 
Questions connexes