如何实现?

解决方案 »

  1.   

    ItemDataBind(....)
    {
      if(e.Row.RowType=DataControlRowType.Header)
     {
         CheckBox checkbox=e.Row.FindControl("checboxID") as CheckBox;
          checkbox.Attributes.Add("onclick","checkAllBox();");
      }
    }
    Aspx
    <script language="javascript">
      function checkAllBox()
      {
       var k=document.getElementsByName("AllcheckBox");
       for(var i=0;i<k.length;i++)
       {
         k[i].checked=true;
       }
      }
    </script>
    注意模版项checkBox应该用客户端的.<input type="checkbox" name="AllcheckBox" vaule="<%# Eval("主键")%> ">
    接收checkBox选种的值this.Request["AllcheckBox"]; 会得到pk1,pk2,的数组
      

  2.   

    HTML:
    ---------------------------------------------------------
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:DataGrid ID="DataGrid1" runat="server" AutoGenerateColumns="False"
                Style="position: relative">
                <Columns>
                    <asp:TemplateColumn HeaderText="选择">
                        <HeaderTemplate>
                            <asp:CheckBox ID="CheckBox2" runat="server"
                                Style="position: relative" Text="头模板" AutoPostBack="True" OnCheckedChanged="CheckBox2_CheckedChanged" />
                        </HeaderTemplate>
                        <ItemTemplate>
                            <asp:CheckBox ID="CheckBox1" runat="server" Style="position: relative" />
                        </ItemTemplate>
                    </asp:TemplateColumn>
                    <asp:BoundColumn DataField="au_id" HeaderText="ID"></asp:BoundColumn>
                </Columns>
            </asp:DataGrid></div>
        </form>
    </body>
    </html>
      

  3.   

    C#:
    __________________________________________________
    SqlConnection con;
        SqlDataAdapter da;
        DataSet ds;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            { Bind(); }
        }    public void Bind()
        {
            con = new SqlConnection("server=.;uid=sa;pwd=;database=pubs");
            da = new SqlDataAdapter("select * from authors",con);
            ds = new DataSet();
            da.Fill(ds);
            DataGrid1.DataSource = ds;
            DataGrid1.DataBind();
        }    protected void CheckBox2_CheckedChanged(object sender, EventArgs e)
        {
            foreach (DataGridItem dgi in DataGrid1.Items)
            {
                CheckBox chkItem = (CheckBox)dgi.FindControl("CheckBox1");
                if (chkItem.Checked)
                    chkItem.Checked = false;
                else
                    chkItem.Checked = true;
            }
        }