程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net Checbox在GridView中的應用實例分析

asp.net Checbox在GridView中的應用實例分析

編輯:ASP.NET基礎

本文實例講述了asp.net Checbox在GridView中的應用方法。分享給大家供大家參考,具體如下:

先看效果圖:

前台代碼:樣式自己定義哦!

<div style="text-align: center; width: 80%">
   <yxy:HkrGridView ID="tabGridView1" runat="server" AutoGenerateColumns="False" Width="100%"
     OnRowDataBound="HkrGridView1_RowDataBound" OnRowCreated="HkrGridView1_RowCreated"
     ShowHeader="True" AllowPaging="false" DataKeyNames="keyId" ShowFooter="false">
     <Columns>
       <asp:BoundField>
         <ItemStyle HorizontalAlign="Center" Width="5%" />
       </asp:BoundField>
       <asp:TemplateField>
       <ItemTemplate>
       <a href='<%#DataBinder.Eval(Container.DataItem,"newName")%>' ><%#DataBinder.Eval(Container.DataItem,"oldName")%></a>
       </ItemTemplate>
       </asp:TemplateField>
     <asp:BoundField DataField="memo">
         <ItemStyle Width="20%" HorizontalAlign="left" />
       </asp:BoundField>
       <asp:TemplateField>
         <ItemTemplate>
           <asp:CheckBox ID="CheckBox" runat="server" />
         </ItemTemplate>
         <ItemStyle HorizontalAlign="Center" Width="5%" />
       </asp:TemplateField>
     </Columns>
     <FooterStyle ForeColor="Red" HorizontalAlign="Center" Font-Bold="true" />
   </yxy:HkrGridView>
   <div id="DivOne" style="text-align: right">
     <asp:CheckBox ID="CheckBoxAll" runat="server" Text="全選" Width="80px" AutoPostBack="True"
       OnCheckedChanged="CheckBoxAll_CheckedChanged" />
     <asp:CheckBox ID="CheckBox1" runat="server" Text="反選" Width="80px" AutoPostBack="True"
       OnCheckedChanged="CheckBox1_CheckedChanged" />
     <asp:Button ID="Button1" runat="server" Text="取 消" CssClass="Button" OnClick="Button1_Click" />
   </div>
</div>

後台代碼:

protected void HkrGridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.Header)
    {
      TableCellCollection tcHeader = e.Row.Cells;
      tcHeader.Clear();
      //第一行表頭
      tcHeader.Add(new TableHeaderCell());
      tcHeader[0].Text = "序號<BR>No.";
      tcHeader.Add(new TableHeaderCell());
      tcHeader[1].Text = "附件名稱";
      tcHeader.Add(new TableHeaderCell());
      tcHeader[2].Text = "備注";
      tcHeader.Add(new TableHeaderCell());
      tcHeader[3].Text = "選擇</tr>";
    }
}
protected void HkrGridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    GridViewRow gr = e.Row;
    if (e.Row.RowIndex != -1)
    {
      e.Row.Cells[0].Text = (e.Row.RowIndex + 1).ToString();
    }
}
private void HkrGridViewBind(){
    string strSql = "SELECT keyId,newName, oldName, localHome,memo FROM aq_file_up WHERE (relaid = @relaid) AND (fjType = @fjType) AND (usestatus = 1)";
    SqlParameter[] sps = {
              new SqlParameter("@relaid",this.hdnRelaId.Value),
              new SqlParameter("@fjType",this.hdnFjType.Value)
               };
    DataTable dt = pms.SqlHelper.ExecuteDataTable(CommandType.Text, strSql, sps);
    tabGridView1.DataSource = dt;
    tabGridView1.DataBind();
}
rotected void Button1_Click(object sender, EventArgs e)
{
    CheckBoxAll.Checked = false;
    CheckBox1.Checked = false;
    for (int i = 0; i <= tabGridView1.Rows.Count - 1; i++)
    {
      CheckBox cb = (CheckBox)tabGridView1.Rows[i].FindControl("CheckBox");
      cb.Checked = false;
    }
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
   for (int i = 0; i <= tabGridView1.Rows.Count - 1; i++)
    {
      CheckBox cb = (CheckBox)tabGridView1.Rows[i].FindControl("CheckBox");
      if (cb.Checked == false)
      {
        cb.Checked = true;
      }
      else
      {
        cb.Checked = false;
      }
    }
    //CheckBox1.Checked =true;
    CheckBoxAll.Checked = false;
}
protected void CheckBoxAll_CheckedChanged(object sender, EventArgs e)
{
   for (int i = 0; i <= tabGridView1.Rows.Count - 1; i++)
    {
      CheckBox cb = (CheckBox)tabGridView1.Rows[i].FindControl("CheckBox");
      if (CheckBoxAll.Checked == true)
      {
        cb.Checked = true;
      }
      else
      {
        cb.Checked = false;
      }
    }
    CheckBox1.Checked = false;
}

更多關於asp.net相關內容感興趣的讀者可查看本站專題:《asp.net操作json技巧總結》、《asp.net字符串操作技巧匯總》、《asp.net操作XML技巧總結》、《asp.net文件操作技巧匯總》、《asp.net ajax技巧總結專題》及《asp.net緩存操作技巧總結》。

希望本文所述對大家asp.net程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved