aspnetpager的2种分页方法

<webdiyer:AspNetPager ID="AspNetPager1" UrlPaging="True" PageSize="20" runat="server" FirstPageText="首页" LastPageText="尾页" NextPageText="下一页" PagingButtonSpacing="" PrevPageText="上一页" ></webdiyer:AspNetPager>

方法1.

if (!this.IsPostBack)

{

int CurrentPageIndex = AspNetPager1.CurrentPageIndex;
if (Request["page"] != null) { CurrentPageIndex = int.Parse(Request["page"]); }
BindData(CurrentPageIndex);

}

void BindData(int CurrentPageIndex)

{

datatable dt=....................;

PagedDataSource pds = new PagedDataSource();

AspNetPager1.RecordCount = dt.Rows.Count;

pds.AllowPaging = true;
pds.PageSize = AspNetPager1.PageSize;
pds.CurrentPageIndex = CurrentPageIndex;
pds.DataSource = dt.DefaultView;
this.rpMsgList.DataSource = pds; //可以绑定到Gridview 、datalist等数据控件上
this.rpMsgList.DataBind();

}

不需要写分页事件代码,因为UrlPaging="True",使用了URL分页 &page=1之类的

方法2.存储过程分页

if (!this.IsPostBack)

{

int CurrentPageIndex = AspNetPager1.CurrentPageIndex;
if (Request["page"] != null) { CurrentPageIndex = int.Parse(Request["page"]); }
BindData(CurrentPageIndex);

}

void BindData(int CurrentPageIndex)
{
int pageCount = 0;
int Counts = 0;//总记录数
rpList.DataSource = SqlHelper.PageProcedure("Company,UserInfo,City,County", " UserName ,CompanyName,SName,CityName,CountyName,Contact,CompanyTypeId,Company.addtime as CompanyAddtime,Status,UId", AspNetPager1.PageSize, CurrentPageIndex, 0, " Company.Status asc, Company.addtime ", 1, " where Company.CityId=City.CityId and City.isshow=1 and Company.CountyId=County.CountyId and County.isshow=1 and Company.UId=UserInfoId " + WebComm.StrWhereHelper.Get_Admin_Company_StrWhere(), "CompanyId", ref pageCount, ref Counts);
AspNetPager1.RecordCount = Counts;
AspNetPager1.CurrentPageIndex = CurrentPageIndex;
rpList.DataBind();
}

不需要写分页事件代码,因为UrlPaging="True",使用了URL分页 &page=1之类的

原文地址:https://www.cnblogs.com/taizhouxiaoba/p/3847909.html