ASPNETPager常用屬性
建議去封裝好,然后調(diào)用這樣比較容易
<webdiyer:aspnetpager id="AspNetPager1" runat="server"
alwaysshow="True"
PageSize="5"
custominfosectionwidth="20%"
custominfotextalign="Right"
firstpagetext="第一頁(yè)"
horizontalalign="Left"
lastpagetext="末一頁(yè)"
navigationbuttontype="Image"
nextpagetext="后一頁(yè)"
pageindexboxtype="TextBox"
pagingbuttonspacing="8px"
showcustominfosection="Right" showpageindexbox="Always" textafterpageindexbox="頁(yè)" UrlPaging="true" textbeforepageindexbox="跳到第" width="97%" onpagechanged="AspNetPager1_PageChanged"> </webdiyer:aspnetpager> alwaysshow:總是顯示分頁(yè)控件; PageSize:指定每頁(yè)顯示的記錄數(shù); custominfosectionwidth:用戶(hù)自定義信息區(qū)的寬度; custominfotextalign:用戶(hù)自定義信息區(qū)的對(duì)齊方式; firstpagetext:第一頁(yè)按鈕上顯示的文本; horizontalalign:內(nèi)容水平對(duì)齊方式; lastpagetext:最后頁(yè)按鈕上顯示的文本; navigationbuttontype:第一頁(yè)、下一頁(yè)、最后一頁(yè)按鈕的類(lèi)型; nextpagetext:下一頁(yè)按鈕上顯示的文本; pageindexboxtype:指示頁(yè)索引框的顯示類(lèi)型:有TextBOX和dropdownlist兩種; pagingbuttonspacing:導(dǎo)航頁(yè)按鈕的間距; prevpagetext:上一頁(yè)按鈕的顯示的文本; showcustominfosection:顯示當(dāng)前頁(yè)和總頁(yè)信息,默認(rèn)為不顯示,值為L(zhǎng)EFT時(shí)將顯示在頁(yè)索引前,為right時(shí)顯示在頁(yè)索引后; showpageindexbox:指定頁(yè)索引文本框或下拉框的顯示方式; textafterpageindexbox:指定頁(yè)索引文本框或下拉框后的文本; UrlPaging:是夠使用URL傳遞分頁(yè)的方式來(lái)分頁(yè); textbeforepageindexbox:指定頁(yè)索引文本框或下拉框前面顯示的文本; width:該控件的寬度; CustomInfoHTML:指定要顯示在用戶(hù)自定義信息區(qū)的用戶(hù)自定義HTML信息文本 using System; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.xml.Linq; using System.Data.SqlClient; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Bind(); } private void Bind() { int pageindex = 1; int pagenum = AspNetPager1.PageSize; if (Request["page"] != null) { pageindex =Convert.ToInt32(Request["page"]); } DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["constr"].ToString ()); SqlConnection con1 = new SqlConnection(ConfigurationManager.ConnectionStrings["constr"].ToString()); SqlDataAdapter sda = new SqlDataAdapter("select top (@pagenum) * from pagetest where id not in (select top (@pagenum*(@pageindex-1)) id from pagetest)", con); sda.SelectCommand.Parameters.AddWithValue("pagenum",pagenum); sda.SelectCommand.Parameters.AddWithValue("pageindex",pageindex); sda.Fill(ds); SqlCommand cmd = new SqlCommand("select count(*) from pagetest", con1); con1.Open(); AspNetPager1.RecordCount =Convert.ToInt32(cmd.ExecuteScalar()); con.Close(); AspNetPager1.CustomInfoHTML = "共" + AspNetPager1.RecordCount + "條記錄" + AspNetPager1.CurrentPageIndex + "/" + AspNetPager1.PageCount; GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { Bind(); } } 深入分析CurrentPageIndex、RecordCount、PageCount、PageSize: pagecount: public int PageCount { get { if (this.RecordCount == 0) { return 1; } return (int) Math.Ceiling((double) (((double) this.RecordCount) / ((double) this.PageSize))); } } recordcount: public int RecordCount { get { if (this.cloneFrom != null) { return this.cloneFrom.RecordCount; } object obj2 = this.ViewState["Recordcount"]; if (obj2 != null) { return (int) obj2; } return 0; } set { this.ViewState["Recordcount"] = value; } } CurrentPageIndex: public int CurrentPageIndex { get { if (this.cloneFrom != null) { return this.cloneFrom.CurrentPageIndex; } object obj2 = this.ViewState["CurrentPageIndex"]; int num = (obj2 == null) ? 1 : ((int) obj2); if ((num > this.PageCount) && (this.PageCount > 0)) { return this.PageCount; } if (num < 1) { return 1; } return num; } set { int pageCount = value; if (pageCount < 1) { pageCount = 1; } else if (pageCount > this.PageCount) { pageCount = this.PageCount; } this.ViewState["CurrentPageIndex"] = pageCount; } } PageSize: public int PageSize { get { int num; if ((!string.IsNullOrEmpty(this.UrlPageSizeName) && !base.DesignMode) && (int.TryParse(this.Page.Request.QueryString[this.UrlPageSizeName], out num) && (num > 0))) { return num; } if (this.cloneFrom != null) { return this.cloneFrom.PageSize; } object obj2 = this.ViewState["PageSize"]; if (obj2 != null) { return (int) obj2; } return 10; } set { this.ViewState["PageSize"] = value; } } AlwaysShow 獲取或設(shè)置一個(gè)值,該值指定是否總是顯示AspNetPager分頁(yè)按件,即使要分頁(yè)的數(shù)據(jù)只有一頁(yè)。 CurrentPageButtonPosition 當(dāng)前頁(yè)數(shù)字按鈕在所有數(shù)字分頁(yè)按鈕中的位置,可選值為:Beginning(最前)、End(最后)、Center(居中)和Fi
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注