PageDataSource类轻松解决Repeater分页问题

 

写一个数据绑定函数,所有关于PageDataSource操作代码都在其中,最后只要在Page_load事件中执行这个方法就行了。

比起自己写分页代码要简洁很多,而且更方便。尤其是像我这样的初学者,最头痛的就是分页问题..

 

后台代码:

private void PageDataBind()
    {
        PagedDataSource myPage = new PagedDataSource();
        myPage.DataSource = ((DataTable)_user._SqlReader("SELECT * FROM [FeedBack] ORDER BY ID DESC")).DefaultView;
        myPage.AllowPaging = true;
        myPage.PageSize = 5;

        int curPage;

        if (Request["Page"] != null)
            curPage = Convert.ToInt32(Request["Page"]);
        else
            curPage = 1;

        myPage.CurrentPageIndex = curPage - 1;

        lblCurPage.Text = "当前是第 " + curPage.ToString() + " 页";

        if (myPage.PageCount > 0)
        {
            if (!myPage.IsFirstPage)
            {
                InkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(curPage - 1);
            }
            else
                InkPrev.Visible = false;

            if (!myPage.IsLastPage)
            {
                InkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(curPage + 1);
            }
            else
                InkNext.Visible = false;
        }

        Repeater1.DataSource = myPage;
        Repeater1.DataBind();
    }

 

前台页面添加的控件代码:

<div align="center" style="font-size:12px;">

      <asp:label ID="lblCurPage" Runat="server"></asp:label>&nbsp;<asp:HyperLink ID="InkPrev" Runat="server">上一页  
      </asp:HyperLink>&nbsp;<asp:HyperLink ID="InkNext" Runat="server">下一页</asp:HyperLink>

</div>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值