本文介绍了直放站的控制和pageddatasource分页功能,pageddatasource类封装的特性,允许数据源控件(如DataGrid,GridView)进行分页操作。如果控制开发者需要提供分页支持自定义数据绑定控件,适用。

对pageddatasource类的共同属性的一部分:

AllowCustomPaging / /获取或设置的值指示是否启用自定义分页。获取或设置AllowPaging /值指示是否启用分页。计数 / /可以使用数据源中的项。获取或设置当前页 / /页索引。获取或设置数据源/ /数据源,数据源中获得datasourcecount / / / 数。在firstindexinpage /第一索引页。iscustompagingenabled / /获取一个值,指示是否启用自定义paging.isfirstpage / /获取一个值,指示当前页面是国内page.islastpage / /获取一个值指示当前页是最后一page.ispagingenabled / /获取一个值,以指示是否启用paging.isreadonly / /获取一个值,它指示数据源是否是read-only.issynchronized / /获取一个值,指示是否对数据源的访问的同步(线程安全)。总页数 / /获取需要显示数据源中的所有项的总页数。获取或设置在单页上显示PageSize / /的数量。获取或在使用自定义分页数据源项的实际数量的virtualcount / /套。
以下是分页显示的例子pageddatasource Repeater控件类的实现,如:
复制代码代码如下所示:
protected void page_load(object sender,EventArgs e)
{
如果(!页面的IsPostBack)。
{
int PageIndex = 1;
尝试
{
convert.toint32 PageIndex =(请求。QueryString {页));
如果(页索引页索引0)= 1;
}
抓住
{
页索引= 1;
}
DataTable dt = getdocumenttable();
pageddatasource PDS =新PagedDataSource();
pds.datasource = dt.defaultview; / /设置数据源
pds.allowpaging = true; / /设定值指示是否启用分页
pds.pagesize = 5; / /设置在页面显示的数量
pds.currentpageindex =页索引- 1; / /设置当前页的索引。
rptdocumentlist.datasource = PDS;
RptDocumentList.DataBind();
ltlpagebar文本= getpagebar(PDS);
}
}
{带}
getpagebar字符串(pageddatasource PDS)
{
字符串标签为空字符串;
在当前页= pds.currentpageindex + 1;
如果(当前页= 1)
{
标签=主页;
}
其他的
{
标签=+ request.currentexecutionfilepath +页= 1 >页面;
}
如果(((当前页1)<1)
{
=页面;
}
其他的
{
标签=+ request.currentexecutionfilepath ++页=(当前页- 1)+ >;
}
如果(((当前页+ 1)> PDS。总页数)
{
=页面;
}
其他的
{
标签=+ request.currentexecutionfilepath ++页=(当前页+ 1)+ >;
}
如果(当前页= PDS。总页数)
{
标签=结束;
}
其他的
{
标签=+ request.currentexecutionfilepath +=+页pds.pagecount + >页面;
}
返回页面;
}
创建表测试
DataTable GetDocumentTable()
{
DataTable dt =新的DataTable();
Dt.Columns.Add(的
Dt.Columns.Add(标题
对于(int = i 1;i < 30;i + +)
{
行行= dt.newrow();
行{的=我;
行{标题文档标题+;
Dt.Rows.Add(行);
}
返回DT;
}