首页 > 代码库 > 使用List集合做数据源,并且使用AspNetPager来分页

使用List集合做数据源,并且使用AspNetPager来分页

AspNetPager 控件使用时,第一步就要在if (!IsPostBack)        {              AspNetPager1.RecordCount =数据源记录总数;            //bindData(); //使用url分页,只需在分页事件处理程序中绑定数据即可,无需在Page_Load中绑定,否则会导致数据被绑定两次        }第二步就是在 绑定数据源时,指定数据源中开始记录的索引与结束记录的索引,这样就可使用了void bindData(){  Repeater1.DataSource = SqlHelper.ExecuteReader(CommandType.StoredProcedure, ConfigurationManager.AppSettings["pagedSPName"],            new SqlParameter("@startIndex", AspNetPager1.StartRecordIndex),            new SqlParameter("@endIndex", AspNetPager1.EndRecordIndex));        Repeater1.DataBind();}问题:如果是用集合来做数据源,怎么办?处理办法利用PagedDataSource做数据源假设下面例子getdata()返回的是泛型list void bind()    {       this.AspNetPager1.PageSize = 5;//分页控件每页显示记录数       this.AspNetPager1.RecordCount = getdata().Count;//分页控件要显示数据源的记录总数              PagedDataSource pds = new PagedDataSource ();//数据源分页        pds.DataSource = getdata();//得到数据源        pds.AllowPaging = true;//允许分页        pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;//当前分页数据源的页面索引        pds.PageSize = AspNetPager1.PageSize;//分页数据源的每页记录数        this.Repeater1.DataSource = pds;//指定为控件数据源        this.Repeater1.DataBind();                }

 

使用List集合做数据源,并且使用AspNetPager来分页