- #region Html内容分页处理函数
- /// <summary>
- /// Html内容分页处理函数
- /// </summary>
- /// <param name="strBody">要分页的内容</param>
- /// <param name="strSplitString">分隔字符串</param>
- /// <param name="pageIndexName">页面索引参数名</param>
- /// <param name="patter">链接匹配模式</param>
- /// <param name="isAppendHeadEnd">是否追加第一页和最后一页</param>
- /// <returns></returns>
- public static string CreateContentPager(ref string strBody,
- string strSplitString,
- string pageIndexName,
- string patter,
- bool isAppendHeadEnd)
- {
- string[] strBodyArray = strBody.Split(new string[] { strSplitString }, StringSplitOptions.None);
- //分页内容
- StringBuilder strHtmlPager = new StringBuilder();
- int currentPageIndex = 1; //当前页页码
- int pageCount = strBodyArray.Length;//总页数
- if (!string.IsNullOrEmpty(HttpContext.Current.Request[pageIndexName]))
- {
- currentPageIndex = CommonFunction.getInteger(HttpContext.Current.Request[pageIndexName]);
- }
- //无需分页
- if (pageCount == 1)
- {
- return null;
- }
- //开始分页处理
- if (isAppendHeadEnd)
- {
- if (currentPageIndex == 1)
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append("<b>[第一页]</b>");
- }
- else
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append(patter.Replace("{0}", 1.ToString()).Replace("{1}", "第一页"));
- }
- }
- //页头
- if (currentPageIndex > 1)
- {
- //显示上一页
- strHtmlPager.AppendLine();
- strHtmlPager.Append(patter.Replace("{0}", (currentPageIndex - 1).ToString()).Replace("{1}", "上一页"));
- }
- else
- {
- if (currentPageIndex == 1)
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append("<b>[上一页]</b>");
- }
- }
- //开始分页
- for (int i = 1; i <= pageCount; i++)
- {
- //如果 当前页索引=页码的话,执行操作标示当前页码
- if (i == currentPageIndex)
- {
- strHtmlPager.AppendLine();
- strHtmlPager.AppendFormat("<b>[{0}]</b>", i);
- }
- else
- {
- strHtmlPager.AppendLine();
- strHtmlPager.AppendFormat(patter.Replace("{0}", i.ToString()).Replace("{1}", i.ToString()));
- }
- }
- //页尾
- if (currentPageIndex + 1 > pageCount)
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append("<b>[下一页]</b>");
- }
- else
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append(patter.Replace("{0}", (currentPageIndex + 1).ToString()).Replace("{1}", "下一页"));
- }
- if (isAppendHeadEnd)
- {
- if (currentPageIndex == pageCount)
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append("<b>[已经是最后一页]</b>");
- }
- else
- {
- strHtmlPager.AppendLine();
- strHtmlPager.Append(patter.Replace("{0}", pageCount.ToString()).Replace("{1}", "最后一页"));
- }
- }
- strBody = strBodyArray[currentPageIndex - 1];
- return strHtmlPager.ToString();
- }
- #endregion
复制代码
|
|