DataGrid自定义分页

 DataGrid自定义分页总结

html中
<asp:linkbutton id="btnFirst" οnclick="PageButtonClick" runat="server" Font-Name="verdana" CommandArgument="0">最前页

</asp:linkbutton>&nbsp;<asp:linkbutton id="btnPrev" οnclick="PageButtonClick" runat="server" CommandArgument="prev">上一页

</asp:linkbutton>&nbsp;<asp:linkbutton id="btnNext" οnclick="PageButtonClick" runat="server" CommandArgument="next">下一页

</asp:linkbutton>&nbsp;<asp:linkbutton id="btnLast" οnclick="PageButtonClick" runat="server" CommandArgument="last">最后页

</asp:linkbutton>&nbsp;
      总共有
      <asp:label id="lblcount" runat="server" ForeColor="Red"></asp:label>&nbsp;条

记录<asp:label id="lblCurrentIndex" runat="server"></asp:label>&nbsp;
      <asp:label id="lblPageCount" runat="server"></asp:label></TD>

CS后台文件中

  protected void GridBind()
  {
   
  .........

   DataGrid1.DataBind();
   lblcount.Text=ds.Tables[0].Rows.Count.ToString();
   conn.Close();
   ShowStats();
   setPage();
  }
  public void setPage()
  {
   if(DataGrid1.PageCount<= 1 )//小于等于一页
   {
    btnFirst.Enabled = false;
    btnPrev.Enabled = false;
    btnNext.Enabled = false;
    btnLast.Enabled = false;
   }
   else //有多页
   {
    if(DataGrid1.CurrentPageIndex== 0 )//当前为第一页
    {
     btnFirst.Enabled = false;
     btnPrev.Enabled = false;
     btnNext.Enabled = true;
     btnLast.Enabled = true;
    }
    else if(DataGrid1.CurrentPageIndex==DataGrid1.PageCount-1)//当前为最后页
    {
     btnFirst.Enabled = true;
     btnPrev.Enabled = true;
     btnNext.Enabled = false;
     btnLast.Enabled = false;                                  
    }
    else //中间页
    {
     btnFirst.Enabled = true;
     btnPrev.Enabled = true;
     btnNext.Enabled = true;
     btnLast.Enabled = true;
    }
   }
  }

  public void PageButtonClick(object sender,EventArgs e)
  {
   string arg=((LinkButton)sender).CommandArgument.ToString();
   switch(arg)
   {
    case "next":
     if(DataGrid1.CurrentPageIndex<(DataGrid1.PageCount-1))
     {
      DataGrid1.CurrentPageIndex+=1;
     }
     break;

    case "prev":
     if(DataGrid1.CurrentPageIndex>0)
     {
      DataGrid1.CurrentPageIndex-=1;
     }
     break;
    case "last":
     DataGrid1.CurrentPageIndex=(DataGrid1.PageCount-1);
     break;
    default:
     DataGrid1.CurrentPageIndex=System.Convert.ToInt32(arg);
     break;

   }
   GridBind();
   ShowStats();

  }
  private void ShowStats()
  {
   //显示当前页面是第几页
   lblCurrentIndex.Text = "第 " + (DataGrid1.CurrentPageIndex + 1).ToString() + " 页";
   //显示总页数
   lblPageCount.Text = "总共 " + DataGrid1.PageCount.ToString() + " 页";
  

  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值