asp.net中gridview内的复选框

asp.net中gridview内的复选框,asp.net,Asp.net,我正在gridview中使用复选框: <asp:TemplateField> <HeaderTemplate> <asp:CheckBox ID="chkhdr" runat="server" AutoPostBack="true" /> </HeaderTemplate> <ItemTemplate> <asp:CheckBox CssClass="gridrownor

我正在gridview中使用复选框:

<asp:TemplateField>
    <HeaderTemplate>
        <asp:CheckBox ID="chkhdr" runat="server" AutoPostBack="true"  />
    </HeaderTemplate>
    <ItemTemplate>
         <asp:CheckBox CssClass="gridrownormal3" ID="chkChild" runat="server" />                          
    </ItemTemplate>
</asp:TemplateField>
单击按钮以绑定网格:

 protected void Button1_Click(object sender, EventArgs e)
 {
     /*
      * Clear All Data in Grid By Calling Empty_GridView
      * */
      if (this.IsValid)
      {
           Empty_GridView(grdDocList_Summary);
           List<SearchEngineEO> doc = Docs;
           var query18 = (from c in doc 
                          select new { c.DocNO, c.DocType, c.Title, c.Padid,
                                         c.PublisherName, c.PublishedDate, 
                                         c.Rade }).Distinct().ToList();
           grdDocList_Summary.DataSource = query18;
           grdDocList_Summary.DataBind();
      }
} 
我在运行时选中复选框,我想显示这些行的一些详细信息。 我使用以下代码:

 for (int i = 0; i < grdDocList_Summary.Rows.Count; i++)
 {
      GridViewRow row = grdDocList_Summary.Rows[i];
      bool isChecked = ((CheckBox)row.FindControl("chkChild")).Checked;

      if(isChecked)
      {
           String str = row.Cells[1].Text;
           DocNos.Add(str);
      }
 }

假设我在grdDocList_摘要中有10行。当我选中一个复选框时,对于上述变量的所有迭代,ischecked为true。为什么会发生这种情况

在按钮的点击事件中,从文档中的c选择新的{c.DocNO,c.DocType,c.Title,c.Padid,c.PublisherName,c.PublishedDate,c.Rade}.Distinct.ToList;grdDocList_Summary.DataSource=query18;grdDocList_Summary.DataBind;受保护的无效按钮1\u Clickobject sender,EventArgs eif this.IsValidlet us您能在此处添加按钮1\u Click事件代码吗,即在您的问题中?