您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關ASP.NET中怎么實現分頁,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
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: 在此處添加構造函數邏輯 // } public void datapager(string content,string query) { string PagerSplit = System.Configuration.ConfigurationManager.AppSettings["PagerSplit"];//從 web.config中獲取分頁符,當然這里可以自己定義,為了方便還是放到配置文件或者數據庫中。 string[] contentArray = StringSplit(content, PagerSplit);//這里是一個方法,摘自網上 int PageCount = contentArray.Length; this.pagecount.Text = "共" + PageCount.ToString() + "font>b>頁"; int CurPage; //確定當前頁數 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; } //顯示當前頁數 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 將字符串分割成數組 /// <summary> /// 將字符串分割成數組 /// 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 采用遞歸將字符串分割成數組 /// <summary> /// 采用遞歸將字符串分割成數組 /// 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 調用部分:
在aspx中增加label等元素。
< asp:label id="currentpage" runat="server" CssClass="gray">當前頁< /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中增加調用代碼。
private ContentPager pager; protected void Page_Load(object sender, EventArgs e) { int id = Convert.ToInt32(Request.QueryString["id"]);//接收參數,例如訪問這個頁是xxx.aspx?id=1 DataSet ds = new DataSet(); //從數據庫讀內容部分就略掉了 DataRow drow; drow = ds.Tables[0].Rows[0]; string cont = drow["content"].ToString();//此部分可以把內容中的HTML代碼轉換一下,我也省略了 //文章分頁,關鍵部分 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中怎么實現分頁了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。