public void CreatePagerTree(ArrayList treelist) { string key = Convert.ToString(Request["name"]); int pageIndex = Request["pageIndex"] == null ? 0 : Convert.ToInt32(Request["pageIndex"]); int pageSize = Request["pageSize"] == null ? 20 : Convert.ToInt32(Request["pageSize"]); //加载数据 Test.DataTree tree = new Test.DataTree("UID", "ParentTaskUID", "children"); tree.LoadList(treelist); //处理折叠 tree.SetRequest(Request); //处理过滤 if (!string.IsNullOrEmpty(key)) { ArrayList nodes = SearchNodes(key, treelist); tree.SetFiltered(nodes); } //处理分页 Hashtable result = new Hashtable(); result["total"] = tree.GetTotalCount(); result["data"] = tree.GetPagedData(pageIndex, pageSize); //返回JSON String json = Test.JSON.Encode(result); Response.Write(json); }