用aspnetpager实现datalist分页

aspnetpager对datalist分页的使用,网上关于datalist分页的办法很多,但是我觉得都不是很简单实用,有的是url提交,有的是存储过程分页,不方便。下面就是aspnetpager的分页,代码。

1.首先下载aspnetpager控件,http://www.webdiyer.com/download/default.aspx

2.在工具箱里面添加aspnetpager控件。

3.前台引用

[html] view plaincopy

  1. <asp:DataList runat="server" ID="dlPicList" Width="100%" Border="0" CellSpacing="0" CellPadding="0" RepeatColumns="4" RepeatDirection="Horizontal">  

  2. <ItemTemplate>  

  3. <a href='<%# "PicView.aspx?PicID="+Eval("PicID")%>'><asp:Image ID="imPic" runat="server" ImageUrl='<%# Bind("PicUrl")%>' width="104" height="76" BorderWidth="1" /><br />  

  4. <asp:Label runat="server" ID="lblTitle" Text='<%# Bind("DisTitle")%>'></asp:Label></a>  

  5. </ItemTemplate>  

  6. <ItemStyle CssClass="word_green" HorizontalAlign="Center" />  

  7. </asp:DataList>  

  8.   

  9. <webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="5" ShowBoxThreshold="1" AlwaysShow="True" FirstPageText="首页" LastPageText="末页"  

  10. NextPageText="下一页" PrevPageText="上一页" onpagechanging="AspNetPager1_PageChanging">  

  11. </webdiyer:AspNetPager>  

4.后台代码

[csharp] view plaincopy

  1. protected void Page_Load(object sender, EventArgs e)  

  2. {  

  3. if (!IsPostBack)  

  4. {  

  5. BindData();  

  6. }  

  7. }  

  8.   

  9. private void BindData()  

  10. {  

  11.   

  12. conn = ConfigurationManager.ConnectionStrings["STRING_SqlConn"].ToString();  

  13. object[] para = { 0, picid };  

  14. DataTable dt = DataOperator.TableUseTrans(conn, "SP_Pic_GetView", para);  

  15. DataView dv = dt.DefaultView;  

  16. //对用于分页的类的引用  

  17. PagedDataSource pds = new PagedDataSource();  

  18. pds.DataSource = dv;//设置数据源(DataTable类型)  

  19. pds.AllowPaging = true;  

  20. //每页显示的行数  

  21. //pds.PageSize = 12;  

  22.   

  23.   

  24. AspNetPager1.RecordCount = dv.Count;  

  25. pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;  

  26. pds.PageSize = AspNetPager1.PageSize;  

  27. dlPicList.DataSource= pds;  

  28. dlPicList.DataBind();  

  29.   

  30. }  

  31.   

  32. protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)  

  33. {  

  34. AspNetPager1.CurrentPageIndex = e.NewPageIndex;  

  35. BindData();  

  36. }  



你可能感兴趣的:(用aspnetpager实现datalist分页)