溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

ASP.NET中怎么實現(xiàn)分頁

發(fā)布時間:2021-08-07 11:08:11 來源:億速云 閱讀:277 作者:Leah 欄目:編程語言

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)ASP.NET中怎么實現(xiàn)分頁,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

asp.net分頁代碼1 ContentPager .cs

using System;  using System.Data;  using System.Configuration;  using System.Collections;  using System.ComponentModel;  using System.Web;  using System.Web.Security;  using System.Web.UI;  using System.Web.UI.WebControls;  using System.Web.UI.WebControls.WebParts;  using System.Web.UI.HtmlControls;  using System.Web.SessionState;   /// <summary> /// ContentPager 的摘要說明  /// summary> public class ContentPager : System.Web.UI.Page  {       private System.Web.UI.WebControls.HyperLink lnknext;      private System.Web.UI.WebControls.HyperLink lnkprev;      private System.Web.UI.WebControls.HyperLink lnkfist;      private System.Web.UI.WebControls.HyperLink lnklast;      private System.Web.UI.WebControls.Label pagenum;      private System.Web.UI.WebControls.Label pagecount;      private System.Web.UI.WebControls.Label displaycontent;       public ContentPager()      {          //          // TODO: 在此處添加構(gòu)造函數(shù)邏輯          //      }       public void datapager(string content,string query)      {          string PagerSplit = System.Configuration.ConfigurationManager.AppSettings["PagerSplit"];//從 web.config中獲取分頁符,當(dāng)然這里可以自己定義,為了方便還是放到配置文件或者數(shù)據(jù)庫中。          string[] contentArray = StringSplit(content, PagerSplit);//這里是一個方法,摘自網(wǎng)上           int PageCount = contentArray.Length;          this.pagecount.Text = "共" + PageCount.ToString() + "font>b>頁";          int CurPage;           //確定當(dāng)前頁數(shù)          if (System.Web.HttpContext.Current.Request.Params["Page"] != null)          {              CurPage = Convert.ToInt32(System.Web.HttpContext.Current.Request.Params["Page"]);          }          else          {              CurPage = 1;          }           if (CurPage < 1) CurPage = 1;          if (Convert.ToInt32(System.Web.HttpContext.Current.Request.Params["Page"]) > PageCount)          {              CurPage = PageCount;          }           //顯示當(dāng)前頁數(shù)          this.pagenum.Text = "第" + CurPage.ToString() + "font>b>頁";          //下一頁          if (CurPage != PageCount)          {              lnknext.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1) + query;          }          //上一頁          if (CurPage > 1)          {              lnkprev.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1) + query;          }           //***頁          if (CurPage != 1)          {              lnkfist.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(1) + query;          }           //***一頁          if (CurPage != PageCount)          {              lnklast.NavigateUrl = System.Web.HttpContext.Current.Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(PageCount) + query;          }           displaycontent.Text = contentArray[CurPage - 1].ToString();      }           #region  System.Web.UI.WebControls.HyperLink DisplayContent      public System.Web.UI.WebControls.Label DisplayContent      {          get          {              return this.DisplayContent;          }          set          {              this.displaycontent = value;          }      }      #endregion       #region  System.Web.UI.WebControls.HyperLink Lnkprev      public System.Web.UI.WebControls.HyperLink Lnkprev      {          get          {              return this.lnkprev;          }          set          {              this.lnkprev = value;          }      }      #endregion       #region System.Web.UI.WebControls.HyperLink Lnknext      public System.Web.UI.WebControls.HyperLink Lnknext      {          get          {              return this.lnknext;          }          set          {              this.lnknext = value;          }      }      #endregion       #region  System.Web.UI.WebControls.HyperLink Lnkfist      public System.Web.UI.WebControls.HyperLink Lnkfist      {          get          {              return this.lnkfist;          }          set          {              this.lnkfist = value;          }      }      #endregion       #region  System.Web.UI.WebControls.HyperLink Lnklast      public System.Web.UI.WebControls.HyperLink Lnklast      {          get          {              return this.lnklast;          }          set          {              this.lnklast = value;          }      }      #endregion       #region  System.Web.UI.WebControls.Label Pagenum      public System.Web.UI.WebControls.Label Pagenum      {          get          {              return this.pagenum;          }          set          {              this.pagenum = value;          }      }      #endregion       #region System.Web.UI.WebControls.Label Pagecount      public System.Web.UI.WebControls.Label Pagecount      {          get          {              return this.pagecount;          }          set          {              this.pagecount = value;          }      }      #endregion      #region 將字符串分割成數(shù)組          /// <summary>         /// 將字符串分割成數(shù)組          /// summary>         /// <param name="strSource">param>         /// <param name="strSplit">param>         /// <returns>returns>         public string[] StringSplit(string strSource, string strSplit)          {              string[] strtmp = new string[1];              int index = strSource.IndexOf(strSplit, 0);              if (index < 0)              {                  strtmp[0] = strSource;                  return strtmp;              }              else              {                  strtmp[0] = strSource.Substring(0, index);                  return StringSplit(strSource.Substring(index + strSplit.Length), strSplit, strtmp);              }          }          #endregion           #region 采用遞歸將字符串分割成數(shù)組          /// <summary>         /// 采用遞歸將字符串分割成數(shù)組          /// summary>         /// <param name="strSource">param>         /// <param name="strSplit">param>         /// <param name="attachArray">param>         /// <returns>returns>         private string[] StringSplit(string strSource, string strSplit, string[] attachArray)          {              string[] strtmp = new string[attachArray.Length + 1];              attachArray.CopyTo(strtmp, 0);               int index = strSource.IndexOf(strSplit, 0);              if (index < 0)              {                  strtmp[attachArray.Length] = strSource;                  return strtmp;              }              else              {                  strtmp[attachArray.Length] = strSource.Substring(0, index);                  return StringSplit(strSource.Substring(index + strSplit.Length), strSplit, strtmp);              }          }          #endregion  }


asp.net分頁代碼2 調(diào)用部分:

在aspx中增加label等元素。

< asp:label id="currentpage" runat="server" CssClass="gray">當(dāng)前頁< /asp:label>                                           < asp:label id="totalpage" runat="server" CssClass="gray">Label< /asp:label>                < asp:hyperlink id="lnkfist" runat="server" CssClass="gray">首頁< /asp:hyperlink>|              < asp:hyperlink id="lnkprev" runat="server" CssClass="gray">前頁< /asp:hyperlink>|              < asp:hyperlink id="lnknext" runat="server" CssClass="gray">下頁< /asp:hyperlink>|              < asp:hyperlink id="lnklast" runat="server" CssClass="gray">尾頁< /asp:hyperlink>


在aspx.cs中增加調(diào)用代碼。

private ContentPager pager;    protected void Page_Load(object sender, EventArgs e)      {          int id = Convert.ToInt32(Request.QueryString["id"]);//接收參數(shù),例如訪問這個頁是xxx.aspx?id=1          DataSet ds = new DataSet();           //從數(shù)據(jù)庫讀內(nèi)容部分就略掉了           DataRow drow;          drow = ds.Tables[0].Rows[0];          string cont = drow["content"].ToString();//此部分可以把內(nèi)容中的HTML代碼轉(zhuǎn)換一下,我也省略了                 //文章分頁,關(guān)鍵部分           pager = new ContentPager();           pager.Lnknext = this.lnknext;          pager.Lnkprev = this.lnkprev;          pager.Lnklast = this.lnklast;          pager.Lnkfist = this.lnkfist;          pager.Pagenum = this.currentpage;          pager.Pagecount = this.totalpage;          pager.DisplayContent = this.content;           string query = "&id=" + Request.QueryString["id"].ToString();          pager.datapager(cont, query);  }

上述就是小編為大家分享的ASP.NET中怎么實現(xiàn)分頁了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI