ASPNETPager常用屬性(近來用到分頁屬性)

ASPNETPager常用屬性

建議去封裝好,然後調用這樣比較容易

<webdiyer:aspnetpager id="AspNetPager1" runat="server"

           alwaysshow="True"

           PageSize="5"

           custominfosectionwidth="20%"

           custominfotextalign="Right"

           firstpagetext="第一頁"

           horizontalalign="Left"

           lastpagetext="末一頁"

           navigationbuttontype="Image" 

           nextpagetext="後一頁"

           pageindexboxtype="TextBox"

           pagingbuttonspacing="8px"

           prevpagetext="前一頁"

           showcustominfosection="Right"

           showpageindexbox="Always"

           textafterpageindexbox="頁"

           UrlPaging="true"

           textbeforepageindexbox="跳到第"

           width="97%"

           onpagechanged="AspNetPager1_PageChanged">

    </webdiyer:aspnetpager>

alwaysshow:總是顯示分頁控件;

PageSize:指定每頁顯示的記錄數;

custominfosectionwidth:用戶自定義信息區的寬度;

custominfotextalign:用戶自定義信息區的對齊方式;

firstpagetext:第一頁按鈕上顯示的文本;

horizontalalign:內容水平對齊方式;

lastpagetext:最後頁按鈕上顯示的文本;

navigationbuttontype:第一頁、下一頁、最後一頁按鈕的類型;

nextpagetext:下一頁按鈕上顯示的文本;

pageindexboxtype:指示頁索引框的顯示類型:有TextBOX和dropdownlist兩種;

pagingbuttonspacing:導航頁按鈕的間距;

prevpagetext:上一頁按鈕的顯示的文本;

showcustominfosection:顯示當前頁和總頁信息,默認爲不顯示,值爲LEFT時將顯示在頁索引前,爲right時顯示在頁索引後;

showpageindexbox:指定頁索引文本框或下拉框的顯示方式;

textafterpageindexbox:指定頁索引文本框或下拉框後的文本;

UrlPaging:是夠使用URL傳遞分頁的方式來分頁;

textbeforepageindexbox:指定頁索引文本框或下拉框前面顯示的文本;

width:該控件的寬度;

CustomInfoHTML:指定要顯示在用戶自定義信息區的用戶自定義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  

獲取或設置一個值,該值指定是否總是顯示AspNetPager分頁按件,即使要分頁的數據只有一頁。 

CurrentPageButtonPosition  

當前頁數字按鈕在所有數字分頁按鈕中的位置,可選值爲:Beginning(最前)、End(最後)、Center(居中)和Fixed(默認固定)   

CurrentPageIndex  

獲取或設置當前顯示頁的索引。   

FirstPageText   

獲取或設置爲第一頁按鈕顯示的文本。 

LastPageText   

獲取或設置爲最後一頁按鈕顯示的文本。 

NextPageText   

獲取或設置爲下一頁按鈕顯示的文本。 

PrevPageText   

獲取或設置爲上一頁按鈕顯示的文本。 

PageSize 

  

獲取或設置每頁顯示的項數。(該值獲取或設置數據呈現控件每次要顯示數據表中的的數據的項數,AspNetPager根據該值和 RecordCount 來計算顯示所有數據需要的總頁數,即 PageCount的值。 )  

 

PageIndexBoxType: 

    

或者或設置頁索引框的顯示類型,可以是允許用戶手工輸入的文本框和只能選擇的下拉框。 

MoreButtonType  

獲取或設置“更多頁”(...)按鈕的類型,該值僅當PagingButtonType設爲Image時纔有效。 

UrlPageIndexName  

獲取或設置當啓用Url分頁方式時,在url中表示要傳遞的頁索引的參數的名稱。   

UrlPageSizeName  

獲取或設置Url中指定每頁顯示記錄數的參數的名稱,或該值不爲空或Url

 

 

 

 

 

 

中該值對應的參數的值大於0,則PageSize屬性將使用該參數的值做爲每頁顯示的記錄數。   

UrlPaging  

獲取或設置是否啓用url來傳遞分頁信息。  

 

TextAfterPageIndexBox  

獲取或設置頁索引頁索引輸入文本框或下拉框後的文本字符串值。   

TextBeforePageIndexBox  

獲取或設置頁索引頁索引輸入文本框或下拉框前的文本字符串值。 

NavigationButtonType  

獲取或設置第一頁、上一頁、下一頁和最後一頁按鈕的類型,該值僅當PagingButtonType設爲Image時纔有效。   

NavigationToolTipTextFormatString  

獲取或設置導航按鈕工具提示文本的格式。   

NextPageText  

獲取或設置爲下一頁按鈕顯示的文本。   

NumericButtonCount  

獲取或設置在 AspNetPager 控件的頁導航元素中同時顯示的數值按鈕的數目。   

NumericButtonTextFormatString  

獲取或設置頁索引數值導航按鈕上文本的顯示格式。   

NumericButtonType  

獲取或設置頁導航數值按鈕的類型,該值僅當PagingButtonType設爲Image時纔有效。  

PageCount  

獲取所有要分頁的記錄需要的總頁數。   

PageIndexBoxClass  

獲取或設置應用於頁索引輸入文本框或下拉框的CSS類名。   

PageIndexBoxStyle  

獲取或設置頁索引輸入文本框或下拉框的CSS樣式文本。   

PageIndexBoxType   

 

 

 

 

 

 

PageIndexOutOfRangeErrorMessage  

獲取或設置當用戶輸入的頁索引超出範圍(大於最大頁索引或小於最小頁索引)時在客戶端顯示的錯誤信息。   

PageSize 獲取或設置每頁顯示的項數。   

PagesRemain 獲取當前頁之後未顯示的頁的總數。   PagingButtonLayoutType  

指定分頁導航按鈕(數字和上頁、下頁、首頁、尾頁)佈局方式,可以將這些元素包含在<li> 或<span>標籤中以方便應用CSS樣式,默認不包含在任何標籤中。   

PagingButtonSpacing  

獲取或設置分頁導航按鈕之間的間距。   

PagingButtonType  

獲取或設置分頁導航按鈕的類型,即使用文字還是圖片。  

ShowFirstLast  

獲取或設置一個值,該值指示是否在頁導航元素中顯示第一頁和最後一頁按鈕。   

ShowNavigationToolTip  

獲取或設置一個值,該值批示當鼠標指針懸停在導航按鈕上時是否顯示工具提示。   

ShowPageIndex  

獲取或設置一個值,該值指示是否在頁導航元素中顯示頁索引數值按鈕。   

ShowPageIndexBox   ShowPrevNext  

獲取或設置一個值,該值指示是否在頁導航元素中顯示上一頁和下一頁按鈕


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章