ASP.NET分页代码的实现(C#,FCKeditor)

这几天闲来无事,所以写了个大文章分页代码,下面提供给大家。
实现思路是:后台管理员文章发布的时候自己手动添加分页符,后台我用的也是 FCKeditor,所以修改了他的source增加了自己的button。在button的事件里写上自己的代码,当然就是直接insert innerhtml自己的分页标志了,我目前用的是|,|,|,|,|,|当然可以自定义其他的。首先提供个类库。

网站制作、建网站找专业的建站公司创新互联:定制网站、模板网站、仿站、成都小程序开发、软件开发、成都APP应用开发等。做网站价格咨询创新互联:服务完善、十载建站、值得信赖!网站制作电话:028-86922220

asp.net分页代码1 ContentPager .cs

 
 
  1. using System;
  2. using System.Data;
  3. using System.Configuration;
  4. using System.Collections;
  5. using System.ComponentModel;
  6. using System.Web;
  7. using System.Web.Security;
  8. using System.Web.UI;
  9. using System.Web.UI.WebControls;
  10. using System.Web.UI.WebControls.WebParts;
  11. using System.Web.UI.HtmlControls;
  12. using System.Web.SessionState;
  13. /// 
  14. /// ContentPager 的摘要说明
  15. ///  summary>
  16. public class ContentPager : System.Web.UI.Page
  17. {
  18.     private System.Web.UI.WebControls.HyperLink lnknext;
  19.     private System.Web.UI.WebControls.HyperLink lnkprev;
  20.     private System.Web.UI.WebControls.HyperLink lnkfist;
  21.     private System.Web.UI.WebControls.HyperLink lnklast;
  22.     private System.Web.UI.WebControls.Label pagenum;
  23.     private System.Web.UI.WebControls.Label pagecount;
  24.     private System.Web.UI.WebControls.Label displaycontent;
  25.     public ContentPager()
  26.     {
  27.         //
  28.         // TODO: 在此处添加构造函数逻辑
  29.         //
  30.     }
  31.     public void datapager(string content,string query)
  32.     {
  33.         string PagerSplit = System.Configuration.ConfigurationManager.AppSettings["PagerSplit"];//从 web.config中获取分页符,当然这里可以自己定义,为了方便还是放到配置文件或者数据库中。
  34.         string[] contentArray = StringSplit(content, PagerSplit);//这里是一个方法,摘自网上
  35.         int PageCount = contentArray.Length;
  36.         this.pagecount.Text = "共" + PageCount.ToString() + " font> b>页";
  37.         int CurPage;
  38.         //确定当前页数
  39.         if (System.Web.HttpContext.Current.Request.Params["Page"] != null)
  40.         {
  41.             CurPage = Convert.ToInt32(System.Web.HttpContext.Current.Request.Params["Page"]);
  42.         }
  43.         else
  44.         {
  45.             CurPage = 1;
  46.         }
  47.         if (CurPage < 1) CurPage = 1;
  48.         if (Convert.ToInt32(System.Web.HttpContext.Current.Request.Params["Page"]) > PageCount)
  49.         {
  50.             CurPage = PageCount;
  51.         }
  52.         //显示当前页数
  53.         this.pagenum.Text = "第" + CurPage.ToString() + " font> b>页";
  54.         //下一页
  55.         if (CurPage != PageCount)
  56.         {
  57.             lnknext.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1) + query;
  58.         }
  59.         //上一页
  60.         if (CurPage > 1)
  61.         {
  62.             lnkprev.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1) + query;
  63.         }
  64.         //***页
  65.         if (CurPage != 1)
  66.         {
  67.             lnkfist.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(1) + query;
  68.         }
  69.         //***一页
  70.         if (CurPage != PageCount)
  71.         {
  72.             lnklast.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(PageCount) + query;
  73.         }
  74.         displaycontent.Text = contentArray[CurPage - 1].ToString();
  75.     }
  76.  
  77.     #region  System.Web.UI.WebControls.HyperLink DisplayContent
  78.     public System.Web.UI.WebControls.Label DisplayContent
  79.     {
  80.         get
  81.         {
  82.             return this.DisplayContent;
  83.         }
  84.         set
  85.         {
  86.             this.displaycontent = value;
  87.         }
  88.     }
  89.     #endregion
  90.     #region  System.Web.UI.WebControls.HyperLink Lnkprev
  91.     public System.Web.UI.WebControls.HyperLink Lnkprev
  92.     {
  93.         get
  94.         {
  95.             return this.lnkprev;
  96.         }
  97.         set
  98.         {
  99.             this.lnkprev = value;
  100.         }
  101.     }
  102.     #endregion
  103.     #region System.Web.UI.WebControls.HyperLink Lnknext
  104.     public System.Web.UI.WebControls.HyperLink Lnknext
  105.     {
  106.         get
  107.         {
  108.             return this.lnknext;
  109.         }
  110.         set
  111.         {
  112.             this.lnknext = value;
  113.         }
  114.     }
  115.     #endregion
  116.     #region  System.Web.UI.WebControls.HyperLink Lnkfist
  117.     public System.Web.UI.WebControls.HyperLink Lnkfist
  118.     {
  119.         get
  120.         {
  121.             return this.lnkfist;
  122.         }
  123.         set
  124.         {
  125.             this.lnkfist = value;
  126.         }
  127.     }
  128.     #endregion
  129.     #region  System.Web.UI.WebControls.HyperLink Lnklast
  130.     public System.Web.UI.WebControls.HyperLink Lnklast
  131.     {
  132.         get
  133.         {
  134.             return this.lnklast;
  135.         }
  136.         set
  137.         {
  138.             this.lnklast = value;
  139.         }
  140.     }
  141.     #endregion
  142.     #region  System.Web.UI.WebControls.Label Pagenum
  143.     public System.Web.UI.WebControls.Label Pagenum
  144.     {
  145.         get
  146.         {
  147.             return this.pagenum;
  148.         }
  149.         set
  150.         {
  151.             this.pagenum = value;
  152.         }
  153.     }
  154.     #endregion
  155.     #region System.Web.UI.WebControls.Label Pagecount
  156.     public System.Web.UI.WebControls.Label Pagecount
  157.     {
  158.         get
  159.         {
  160.             return this.pagecount;
  161.         }
  162.         set
  163.         {
  164.             this.pagecount = value;
  165.         }
  166.     }
  167.     #endregion
  168.    #region 将字符串分割成数组
  169.         /// 
  170.         /// 将字符串分割成数组
  171.         ///  summary>
  172.         ///  param>
  173.         ///  param>
  174.         ///  returns>
  175.         public string[] StringSplit(string strSource, string strSplit)
  176.         {
  177.             string[] strtmp = new string[1];
  178.             int index = strSource.IndexOf(strSplit, 0);
  179.             if (index < 0)
  180.             {
  181.                 strtmp[0] = strSource;
  182.                 return strtmp;
  183.             }
  184.             else
  185.             {
  186.                 strtmp[0] = strSource.Substring(0, index);
  187.                 return StringSplit(strSource.Substring(index + strSplit.Length), strSplit, strtmp);
  188.             }
  189.         }
  190.         #endregion
  191.         #region 采用递归将字符串分割成数组
  192.         /// 
  193.         /// 采用递归将字符串分割成数组
  194.         ///  summary>
  195.         ///  param>
  196.         ///  param>
  197.         ///  param>
  198.         ///  returns>
  199.         private string[] StringSplit(string strSource, string strSplit, string[] attachArray)
  200.         {
  201.             string[] strtmp = new string[attachArray.Length + 1];
  202.             attachArray.CopyTo(strtmp, 0);
  203.             int index = strSource.IndexOf(strSplit, 0);
  204.             if (index < 0)
  205.             {
  206.                 strtmp[attachArray.Length] = strSource;
  207.                 return strtmp;
  208.             }
  209.             else
  210.             {
  211.                 strtmp[attachArray.Length] = strSource.Substring(0, index);
  212.                 return StringSplit(strSource.Substring(index + strSplit.Length), strSplit, strtmp);
  213.             }
  214.         }
  215.         #endregion
  216. }

asp.net分页代码2 调用部分:

在aspx中增加label等元素。

  
  
  1. < asp:label id="currentpage" runat="server" CssClass="gray">当前页< /asp:label>  
  2.                                        < asp:label id="totalpage" runat="server" CssClass="gray">Label< /asp:label>  
  3.             < asp:hyperlink id="lnkfist" runat="server" CssClass="gray">首页< /asp:hyperlink>|
  4.             < asp:hyperlink id="lnkprev" runat="server" CssClass="gray">前页< /asp:hyperlink>|
  5.             < asp:hyperlink id="lnknext" runat="server" CssClass="gray">下页< /asp:hyperlink>|
  6.             < asp:hyperlink id="lnklast" runat="server" CssClass="gray">尾页< /asp:hyperlink>

 在aspx.cs中增加调用代码。

  
  
  1. private ContentPager pager;
  2.  protected void Page_Load(object sender, EventArgs e)
  3.     {
  4.         int id = Convert.ToInt32(Request.QueryString["id"]);//接收参数,例如访问这个页是xxx.aspx?id=1
  5.         DataSet ds = new DataSet();
  6.         //从数据库读内容部分就略掉了
  7.         DataRow drow;
  8.         drow = ds.Tables[0].Rows[0];
  9.         string cont = drow["content"].ToString();//此部分可以把内容中的HTML代码转换一下,我也省略了
  10.       
  11.        //文章分页,关键部分 
  12.         pager = new ContentPager();
  13.         pager.Lnknext = this.lnknext;
  14.         pager.Lnkprev = this.lnkprev;
  15.         pager.Lnklast = this.lnklast;
  16.         pager.Lnkfist = this.lnkfist;
  17.         pager.Pagenum = this.currentpage;
  18.         pager.Pagecount = this.totalpage;
  19.         pager.DisplayContent = this.content;
  20.         string query = "&id=" + Request.QueryString["id"].ToString();
  21.         pager.datapager(cont, query);
  22. }

分享标题:ASP.NET分页代码的实现(C#,FCKeditor)
网站网址:http://www.mswzjz.cn/qtweb/news37/304187.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能