aspx:
 <asp:GridView ID="gvList" runat="server" AutoGenerateColumns="False" CellPadding="4"
            Width="100%" CssClass="GridViewStyle" GridLines="None" DataKeyNames="id" 
            AllowPaging="True" onrowcancelingedit="gvList_RowCancelingEdit" 
            onrowediting="gvList_RowEditing" onrowupdating="gvList_RowUpdating">
            <PagerSettings Visible="false" />
            <RowStyle CssClass="GridViewRowStyle" />
            <Columns>
               <asp:BoundField DataField="id" />
                <asp:TemplateField FooterText="选择" HeaderText="选择">
                    <ItemTemplate>
                        <input ID="Checkbox1" type="checkbox"  value="<%#Eval("id")%>" runat="server" />
                                          </ItemTemplate>
                    <ItemStyle HorizontalAlign="Center" />
                </asp:TemplateField>
c#:
 for (int a = 0; a < gvList.Rows.Count;a++ )
                {
                    HtmlInputCheckBox cb = (HtmlInputCheckBox)gvList.Rows[a].FindControl("Checkbox1");
                    for (int j = 0; j < da.DataTable.Rows.Count; j++)
                    {
                        string str = da.DataTable.Rows[j]["Id"].ToString();
                        if (gvList.Rows[a].Cells[0].Text == str)
                        {
                            cb.Checked = true;
                            break;                        }
                    }                }
为什么后台找不到Checkbox呢?困惑了?在线等

解决方案 »

  1.   

    换成checkbox试试的呢?
    CheckBox cb = (CheckBox)gvList.Rows[a].FindControl("Checkbox1");
      

  2.   

    我试了 是成功的。。我在想为什么 客户端 HtmlInputCheckBox 就不行呢?不知道为什么
      

  3.   

    没引用!!
    添加引用:
    using System.Web.UI.HtmlControls;
      

  4.   

    value="<%#Eval("id")%>"  换成 value='<%#Eval("id")%>'
      

  5.   

    我已经引用了using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Data.SqlClient;
      

  6.   

    加runat="server"如:
    <input id="Checkbox1" type="checkbox"  runat ="server" />