首页 > Windows开发 > 详细

C# 自定义Html分页

时间:2021-04-29 18:15:58      阅读:36      评论:0      收藏:0      [点我收藏+]
 public class CustomPager
    {

        /// <summary>
        /// 每页行数
        /// </summary>
        public int PageSize { get; set; }
        /// <summary>
        /// 总行数
        /// </summary>
        public int TotalCount { get; set; }
        /// <summary>
        /// 总页码
        /// </summary>
        public int pageCount { get; set; }

        /// <summary>
        /// 最多显示页码数
        /// </summary>
        public int MaxPageCount { get; set; }        
        /// <summary>
        /// 当前页码数
        /// </summary>
        public int PageIndex { get; set; }
        /// <summary>
        /// 当前最小页码
        /// </summary>
        public int StartPage { get; set; }
        /// <summary>
        /// 当前最大页码
        /// </summary>
        public int EndPage { get; set; }
        /// <summary>
        /// 页码连接
        /// </summary>
        public string PageUrl { get; set; } = "/list_{pn}";          

        public CustomPager()
        {
            MaxPageCount = 10;
            PageSize = 10;
        }
        public string GetPage()
        {
            pageCount = (int)Math.Ceiling(TotalCount * 1.0 / PageSize);
            StartPage = Math.Max(1, PageIndex-MaxPageCount / 2);
            EndPage = Math.Min(pageCount, StartPage+ MaxPageCount-1);

             StringBuilder strb = new StringBuilder();
            strb.AppendLine("<ul >");
            for (int i = StartPage; i <= EndPage; i++)
            {
                if (i==PageIndex)
                {
                    strb.AppendLine($"<li  style=‘color:red; display: inline;‘ class=‘active‘>{i}</li>");
                }
                else
                {
                    //strb.AppendLine($"<li><a href=‘{PageUrl.Replace("{pn}",i.ToString())}‘>{i}</li>");
                    strb.AppendLine($"<li style=‘display: inline;‘>{i}</li>");
                }
            }

            strb.AppendLine("</ul>");  
            return strb.ToString();

        }
    }

Control:

 public class DefaultController : Controller
    {
        // GET: Default
        public ActionResult Index()
        {
            return View();
        }
    }

View:

@using MVC04.Pages; @*对应CustomPager 命名空间*@
 
<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
    <script type="text/javascript"> 
    </script>
</head>
<body>
    <div> 
        @{ 
            CustomPager cp = new CustomPager();
            cp.pageCount = 10;
            cp.MaxPageCount = 10;
            cp.PageIndex = 11;
            cp.TotalCount = 901;
            cp.PageSize = 50; 
        }
        @Html.Raw(cp.GetPage())

        <button onclick="addpage()">增加</button>
    </div>
</body>
</html>

效果:

技术分享图片

 

C# 自定义Html分页

原文:https://www.cnblogs.com/Zingu/p/14718452.html

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