溫馨提示×

溫馨提示×

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

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

AspNetPager控件如何使用

發(fā)布時間:2021-06-23 15:50:50 來源:億速云 閱讀:176 作者:Leah 欄目:開發(fā)技術

這期內(nèi)容當中小編將會給大家?guī)碛嘘PAspNetPager控件如何使用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

AspNetPager控件是一個基于.net的第三方免費開源控件,具有開發(fā)高效、使用方便、功能完整等優(yōu)點。它彌補了GridView內(nèi)置分頁以及PageDatasource類輔助分頁的不足,將分頁數(shù)據(jù)邏輯和頁面UI分離開來,非常有利于SQL分頁的實現(xiàn)。下面僅舉一個最基本的用法,幫助初學者入門。

到AspNetPage官方網(wǎng)站相應頁面下載控件:點擊打開鏈接

下載后解壓縮,里面有一個AspNetPager.dll文件,它就是我們要使用的控件。另外還有一個AspNetPager.xml文件,它是對應的文檔,主要有兩個作用:一是供開發(fā)人員使用控件時在代碼智能提示里嵌入使用說明,二是供自動生成文檔工具生成文檔。我們把這兩個文件一并放到網(wǎng)站的Bin文件下,然后在Visual Studio 2008 Express的工具箱內(nèi)添加該控件。接著往頁面中拖一個GridView和一個AspNetPager控件。

為AspNetPager控件設置相應屬性和事件,實現(xiàn)分頁功能,這是該控件最重要最基本的用法。代碼如下:

Default.aspx文件相關代碼:

<asp:GridView ID="GridView1" runat="server"> 
</asp:GridView> 
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="20" 
onpagechanging="AspNetPager1_PageChanging"> 
</webdiyer:AspNetPager>

Default.aspx.cs文件相關代碼:

protected void Page_Load(object sender, EventArgs e) 
{ 
if (!IsPostBack) 
DisplayData(1, AspNetPager1.PageSize); 
} 

private void DisplayData(int pageIndex, int pageSize) 
{ 
SQLiteData md = new SQLiteData(); 
AspNetPager1.RecordCount = md.ExecuteScalar<int>("select count(*) from city"); 
DataTable dt = md.FillDataTable(string.Format("select * from city limit {0},{1}", (pageIndex - 1) * pageSize, pageSize)); 
md.Close(); 
GridView1.DataSource = dt; 
GridView1.DataBind(); 
} 

protected void AspNetPager1_PageChanging(object src, PageChangingEventArgs e) 
{ 
DisplayData(e.NewPageIndex, AspNetPager1.PageSize); 
}

首先在aspx文件里設置PageSize屬性,指出每頁的大小為20條記錄。然后在后臺給出總記錄數(shù)RecordCount、當前頁碼e.NewPageIndex。其中DisplayData方法編寫的好壞很重要,這里顯然實現(xiàn)的比較簡練。當?shù)谝淮卧L問頁面時,顯示第1頁、每頁20條記錄;以后選擇其他頁時,顯示第e.NewPageIndex頁、每頁20條記錄。本示例使用的是SQLite數(shù)據(jù)庫,支持limit關鍵詞,所以分頁邏輯比較簡單。需要說明的是,這里用到了自己編寫的數(shù)據(jù)庫操作類SQLiteData類,讀者可以改寫成用原生ADO.net操作,難度不大。

最后顯示效果:

AspNetPager控件如何使用

上述就是小編為大家分享的AspNetPager控件如何使用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI