PagedDataSource-分页-DataView DataList Repeater 都可用 private void BindData()
{
//ds 填充代码
DataView dv = ds.Tables[0].DefaultView;
PagedDataSource Pds = new PagedDataSource();
Pds.DataSource = dv;
Pds.AllowPaging = true;
Pds.PageSize = 10;
int TotalCount = Pds.PageCount;
int CurrPage;
//这里就可以通过各种方式递交页面索引(需要转换一下)
CurrPage = Request.QueryString["Page"];
//设置当前显示第几页,注意:是从第 0 页开始
pds.CurrentPageIndex = CurrPage;
//最后再绑定
//DataList 和 Repeater 都可
DataList1.DataSource = Pds;
DataList1.DataBind();
}
Asp.net 提供了三个功能强大的列表控件:DataGrid、DataList 和 Repeater 控件,但其中只有 DataGrid 控件提供分页功能。相对 DataGrid,DataList 和 Repeater 控件具有更高的样式自定义性,所以很多时候我们喜欢使用 DataList 或 Repeater 控件来显示数据。
PagedDataSource 类封装 DataGrid 控件的属性,这些属性使 DataGrid 可以执行分页。
PagedDataSource 类的部分公共属性:
| AllowCustomPaging | 获取或设置指示是否启用自定义分页的值。 |
| AllowPaging | 获取或设置指示是否启用分页的值。 |
| Count | 获取要从数据源使用的项数。 |
| CurrentPageIndex | 获取或设置当前页的索引。 |
| DataSource | 获取或设置数据源。 |
| DataSourceCount | 获取数据源中的项数。 |
| FirstIndexInPage | 获取页中的第一个索引。 |
| IsCustomPagingEnabled | 获取一个值,该值指示是否启用自定义分页。 |
| IsFirstPage | 获取一个值,该值指示当前页是否是首页。 |
| IsLastPage | 获取一个值,该值指示当前页是否是最后一页。 |
| IsPagingEnabled | 获取一个值,该值指示是否启用分页。 |
| IsReadOnly | 获取一个值,该值指示数据源是否是只读的。 |
| IsSynchronized | 获取一个值,该值指示是否同步对数据源的访问(线程安全)。 |
| PageCount | 获取显示数据源中的所有项所需要的总页数。 |
| PageSize | 获取或设置要在单页上显示的项数。 |
| VirtualCount | 获取或设置在使用自定义分页时数据源中的实际项数。 |
DataGrid 控件就是使用 PagedDataSource 类来实现数据分页显示的,所以 DataList 和 Repeater 也同样可以使用 PagedDataSource 来显示分页。






