使用DNN的分页控件对DATALIST控件进行分页

 

//Page

<% @ Register TagPrefix ="dnn" Namespace ="DotNetNuke.UI.WebControls" Assembly ="DotNetNuke" %>

< dnn : PagingControl ID ="ctlPagingControl" Width ="100%" runat ="server"></ dnn : PagingControl >

 

//Code:

  // 分页控件

             DataTable splist= msmcontr.GetSProductsdt(PortalId);

 

            if (splist.Rows.Count > 0)

            {

                ctlPagingControl.Visible = true ;

                // PagedDataSource 对象的相关属性赋值

                PagedDataSource objPds = new PagedDataSource ();

                 objPds.DataSource = splist.DefaultView;

                objPds.AllowPaging = true ;

 

                int CurPage = 1;

                if (Request["currentpage" ] != null )

                {

                    CurPage = int .Parse(Request["currentpage" ]);

                }

 

                int i = 0;
                if (list.Count % _pagesize != 0)
                {
                    i = (list.Count / _pagesize) + 1;
                }
                else
                {
                    i = list.Count / _pagesize;
                }

                if (i < curPage)
                {
                    curPage = 1;
                }

 

                objPds.CurrentPageIndex = CurPage - 1;

                string reurl = Request.Url.ToString().ToLower();

 

 

                 Regex regex = new Regex("&currentpage=" + Request["currentpage"], RegexOptions.IgnoreCase | RegexOptions.CultureInvariant | RegexOptions.IgnorePatternWhitespace | RegexOptions.Compiled);
                reurl = regex.Replace(reurl, "");

 

                 if(reurl.IndexOf("&language") > 0 && reurl.IndexOf(".aspx") > 0 )

                     reurl = reurl.Remove( reurl.IndexOf("&language") ,reurl.IndexOf(".aspx") + 4);

 

                string para = reurl.Remove(0, reurl.IndexOf("?" ) + 1);

 

 

                if (Request["tabid" ] != null )

                {

                    para = para.ToLower().Replace("tabid=" + Request["tabid" ], "" );

                }

 

                ctlPagingControl.TotalRecords = splist.Rows.Count;

                ctlPagingControl.PageSize = 5;

                ctlPagingControl.CurrentPage = CurPage;

 

                objPds.PageSize = 5;

 

                ctlPagingControl.QuerystringParams = para;

                ctlPagingControl.TabID = TabId;

 

                // PagedDataSource 对象赋给Repeater 控件

                dlProduct.DataSource = objPds;

 

                dlProduct.RepeatColumns = 3;

                dlProduct.RepeatDirection = RepeatDirection .Horizontal;

 

                dlProduct.DataBind();

            }

             else

            {

                ctlPagingControl.Visible = false ;

            }

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值