1.使用了硕正套件中和Treelist并列的另一个组件:Freeform(自由表头)组件, 可参考自由表头演示页及相关资料;
2.紧挨着Treelist下方的工具条就是 Freeform 的 Pager(分页器);
3.分页方案必须结合后端开发,本demo的后端是asp.net;




1.下方的Freeform(自由表头)组件中的含有分页器,可查看该Freeform的XML描述文件,其核心就是如下这句:
    <pager id="ID0" ...>
  其它都是背景外观、自定义功能按钮之类的和分页无关的内容,可见分页器的外观设计也很自由.

2.分页显示的关键是 dataURL 的书写格式必须包含 @rows 宏和二选一的 @page、@startRow宏;
  dataURL = "http://www.supcan.cn/DotNet/access.aspx?rows=@rows&startRow=@startRow"
也可以写成:
  dataURL = "http://www.supcan.cn/DotNet/access.aspx?rows=@rows&page=@Page"
  本例通过 SetObjectProp 函数修改分页器的dataURL,当然,你也可以在XML中将dataURL写死.

3.该TreeList采用了第一个演示页的XML描述文件;

4.源码分析:
function OnReady(id)
{
  AF.func("Build", "t18-com.xml");
  AF.func("id_treelist.Build", "treelist/t1.xml");
  AF.func("id_pager.Build", "treelist/pager.xml");
  //绑定
  var url = "http://www.supcan.cn/DotNet/access.aspx?sleep=1&startRow=@startRow&rows=@rows";
  var h = AF.func("id_treelist.GetHandle", "");
  AF.func("id_pager.BindPager", h + "\r\n ID0");
  //设置分页器的dataURL (将自动加载Treelist数据)
  AF.func("id_pager.SetObjectProp", "ID0\r\n dataURL \r\n" +url+ "\r\n mode=asynch");	//让Treelist异步加载数据
}

6.后端的C#源码,后端的Access数据库文件(access.mdb)您可下载;

7.给程序员的提示:本demo只是分析分页的原理,真正使用时,不要参考本页面,建议参考演示页"30.FreeformBar";