標籤:des 分頁控制項 style blog http color 使用 os
AspNetPager分頁控制項解決了分頁中的很多問題,直接採用該控制項進行分頁處理,會將繁瑣的分頁工作變得簡單化,
效果如下:
下面是我如何使用AspNetPager控制項進行分頁處理的詳細代碼:
1.首先到www.webdiyer.com下載最新的AspNetPager.dll,直接在vs2005中添加引用即可。
2.在頁面上註冊控制項,引入該控制項,當然,需要在頁面中使用一個資料載體,我這裡使用的是repeater控制項。
註冊分頁控制項代碼:
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
3.分頁控制項頁面代碼:
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" AlwaysShow="True" OnPageChanged="AspNetPager1_PageChanged" PageSize="5" ShowNavigationToolTip="True" FirstPageText="第一頁" LastPageText="最後一頁" NextPageText="下一頁" PrevPageText="上一頁" SubmitButtonText="Go" TextAfterPageIndexBox="頁" TextBeforePageIndexBox="轉到" Font-Bold="True" Font-Italic="False" Font-Size="Small" ShowPageIndexBox="Always"> </webdiyer:AspNetPager>
4.後台代碼:
使用linq技術:
using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;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.Xml.Linq;namespace ReSenGuang.news{ public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { initNews(); } } private void initNews() { EntityDBDataContext dc = new EntityDBDataContext(); int page = this.AspNetPager1.CurrentPageIndex; int size = this.AspNetPager1.PageSize; var newsList = dc.t_news.OrderByDescending(p => p.id).ToList(); var news = newsList.Skip(size * (page - 1)).Take(size).ToList(); if (news != null && news.Count > 0) { AspNetPager1.RecordCount = newsList.Count; newsDL.DataSource = news; newsDL.DataBind(); } else { AspNetPager1.RecordCount = 0; newsDL.DataSource = null; newsDL.DataBind(); } } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { initNews(); } }}