AspNetPager分页控件解决了分页中的很多问题,直接采用该控件进行分页处理,会将繁琐的分页工作变得简单化,下面是我如何使用AspNetPager控件进行分页处理的详细代码: 1.首先到www.webdiyer.com下载最新的AspNetPager.dll,直接在vs2005中添加引用即可。 2.在页面上注册控件,引入该控件,当然,需要在页面中使用一个数据载体,我这里使用的是repeater控件。
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
<!--省略-->
<Webdiyer:AspNetPager id="AspNetPager1" runat="server" HorizontalAlign="Right" FirstPageText="<<" LastPageText=">>" PrevPageText="<" NextPageText=">" NumericButtonTextFormatString="-{0}-" Width="600px"
ShowCustomInfoSection="Left" ShowBoxThreshold="2" PageSize="5" InputBoxClass="text2" TextAfterInputBox="" OnPageChanging="AspNetPager1_PageChanging" />
3.cs代码
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
DataSet ds; SqlDataAdapter dr; SqlCommand com;
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["SperConnectionString1"].ToString(); SqlConnection con = new SqlConnection(strconn); con.Open(); com = new SqlCommand(); com.Connection = con; com.CommandText = "select count(*) from Article"; AspNetPager1.AlwaysShow = true; AspNetPager1.PageSize = 5; AspNetPager1.RecordCount = (int)com.ExecuteScalar(); con.Close(); RepeaterDataBind(); } } private void RepeaterDataBind() { string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["SperConnectionString1"].ToString(); dr = new SqlDataAdapter("select * from Article", strconn); ds = new DataSet(); dr.Fill(ds, AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - 1), AspNetPager1.PageSize, "Article"); this.Repeater2.DataSource = ds.Tables["Article"]; this.Repeater2.DataBind();
}
protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e) { AspNetPager1.CurrentPageIndex = e.NewPageIndex; RepeaterDataBind(); } protected string FormatString_Size_13(string str) { if (str.Length > 33) { str = str.Substring(0, 32) + "
"; } return str; }
4.最后修改AspNetPager控件的PageChanging事件为AspNetPager1_PageChanging就可以了。protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["SperConnectionString1"].ToString(); SqlConnection con = new SqlConnection(strconn); con.Open(); com = new SqlCommand(); com.Connection = con; com.CommandText = "select count(*) from Article"; AspNetPager1.AlwaysShow = true; AspNetPager1.PageSize = 5; AspNetPager1.RecordCount = (int)com.ExecuteScalar(); con.Close(); RepeaterDataBind(); } } private void RepeaterDataBind() { string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["SperConnectionString1"].ToString(); dr = new SqlDataAdapter("select * from Article", strconn); ds = new DataSet(); dr.Fill(ds, AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - 1), AspNetPager1.PageSize, "Article"); this.Repeater2.DataSource = ds.Tables["Article"]; this.Repeater2.DataBind();
}
protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e) { AspNetPager1.CurrentPageIndex = e.NewPageIndex; RepeaterDataBind(); } protected string FormatString_Size_13(string str) { if (str.Length > 33) { str = str.Substring(0, 32) + "
![](https://www.cnblogs.com/Images/dot.gif)