思路实现传统的分页功能,即从服务端获取到分页的记录集,再得到符合条件的记录集总数,然后构造一个数据集合,该数据集合数量等于查询结果总数并将其绑定到datapager控件,并且将得到的分页结果绑定到datagrid。当页面pageindex变换时,引发事件从服务端获取相应pageindex的记录集。在具体实现过程中,可以将datagrid和datapager控件封装成一个分页控件
customdatapager : datapager
{
private dependencyproperty m_pageindex = dependencyproperty.register("pagecount", typeof(int), typeof(customdatapager), new propertymetadata(propertychangedcallbackhandler));public new int pagecount
{
get
{
return (int)this.pageindex + 1;
}
set
{
this.setvalue(m_pageindex, value);
}
}private static void propertychangedcallbackhandler(dependencyobject d, dependencypropertychangedeventargs e)
{
customdatapager customdatagrid = d as customdatapager;
if (customdatagrid != null)
{
listlist = new list ;();
int recordcount = (int)e.newvalue;
for (int i = 0; i < recordcount; i++)
{
list.add(i);
}pagedcollectionview pagedcollectionview = new pagedcollectionview(list);
customdatagrid.source = pagedcollectionview;
}
}
然后在自定义的datagrid中调用即可:
private void binddatasource()
{
listdatacollection = new list ();
for (int i = 0; i < 1000; i++)
{
datacollection.add(i.tostring());
}pagedcollectionview pagedcollectionview = new pagedcollectionview(datacollection);
dgresult.itemssource = pagedcollectionview;
dpresult.pagecount = datacollection.count;
}
野比大雄的涅槃 最新版v0.8-625
野比大雄的涅槃是一款非常好玩的从端游移植而来的精品哆啦A梦同
汽车模拟器2内置菜单全车解锁版2024 最新版v1.54.2
汽车模拟器2内置涂装版是游戏的破解版本,在该版本中为玩家提供
快递到了亲内置菜单 安卓版v0.6.2
快递到了亲内置菜单是一款非常好玩的模拟经营类手游,内部有功能
我的世界为时已晚模组整合包 手机版v皮神木马
我的世界为时已晚模组整合包是一款剧情向的恐怖游戏像素风格沙盒
纸牌农庄内购版 v1.12.77
纸牌农庄无限道具版是一款将纸牌与模拟经营相结合的游戏,为玩家