首页 > 其他 > 详细

简单分页

时间:2019-05-07 22:25:28      阅读:120      评论:0      收藏:0      [点我收藏+]

代码

    public class Pager
    {
        #region property
        /// <summary>
        /// 每一页的数据条数
        /// </summary>
        public int PageSize { get; set; }
        /// <summary>
        /// 总数据条数
        /// </summary>
        public int TotalCount { get; set; }
        /// <summary>
        /// 最多显示的页码数
        /// </summary>
        public int MaxPagerCount { get; set; }
        /// <summary>
        /// 当前页(从1开始)
        /// </summary>
        public int PageIndex { get; set; }
        /// <summary>
        /// 拼接Html链接的格式,约定页码占位符{pn}
        /// 例如: "/Role/List?pageIndex={pn}"
        /// </summary>
        public string UrlPattern { get; set; }
        /// <summary>
        /// 当前页码的样式名称
        /// </summary>
        public string CurrentPageClassName { get; set; } 
        #endregion

        public string GetPagerHtml()
        {
            if (TotalCount <= PageSize)
               return null;
            
            StringBuilder sb = new StringBuilder();
            //ToDo:上一页,下一页,首页,末页 ,跳转页
            //总页数
            int pageCount = (int)Math.Ceiling(TotalCount * 1.0f / PageSize);
            //显示页码的 起始 页码
            int startPageIndex = Math.Max(1, PageIndex - MaxPagerCount / 2);
            //显示页码的 结束 页码
            int endPageIndex = Math.Min(pageCount, startPageIndex + MaxPagerCount - 1);

            sb.Append("<ul>");
            for (int i = startPageIndex; i <= endPageIndex; i++)
            {
                if (i == PageIndex)
                {
                    sb.AppendFormat("<li class=‘{0}‘>{1}</li>", CurrentPageClassName, i);
                }
                else
                {
                    string href = UrlPattern.Replace("{pn}", i.ToString());
                    sb.AppendFormat("<li><a href=‘{0}‘>{1}</a></li>", href, i);
                }
            }
            sb.Append("</ul>");
            return sb.ToString();
        }
    }

 

简单分页

原文:https://www.cnblogs.com/kikyoqiang/p/10828386.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!