龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp.net编程 >

使用Flex开发DataGrid分页控件应用支持客户端及服务端(附源码)(3)

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
3分页触发的方法,组件中有一个属性为pagingFunction,为向服务端请求数据的函数;当该函数为空时,调用客户端分页;反之调用该方法进行服务端分页。

3分页触发的方法,组件中有一个属性为pagingFunction,为向服务端请求数据的函数;当该函数为空时,调用客户端分页;反之调用该方法进行服务端分页。

Code [http://www.xueit.com]
1                   /**
 2                   * 更新数据源,更新表格显示数据
 3                   */ 
 4                   private function refreshDataProvider(pageIndex:uint,isCreateNavBar:Boolean=true,pageSize:uint=0,resultReturn:Boolean=false):void{
 5                       //分页函数
 6                       if(dataGrid==null) return;
 7                       currentPageIndex=pageIndex;
 8                       if(pageSize==0){
 9                               pageSize=this.pageSize;    
10                       }else{
11                               this.pageSize=pageSize;
12                              if(!resultReturn) totalPages = Math.ceil(orgData.length/pageSize);
13                       }                      
14                       if(!resultReturn){                                                                                       
15                               if(this.pagingFunction!=null){
16                                     pagingFunction(pageIndex,pageSize);
17                                     this.isCreateNavBar=isCreateNavBar;    
18                               }
19                               else{
20                                       viewData = new ArrayCollection( orgData.source.slice((pageIndex * pageSize),(pageIndex * pageSize)   pageSize) );                      
21                                       dataGrid.dataProvider=viewData;
22                                       pageNumber.text=(pageIndex 1).toString();
23                                          
24                                         totalRecordLabel.text = '总记录数:'   orgData.length.toString();                                                              
25                               }
26                       }
27                       else{
28                               dataGrid.dataProvider=orgData;
29                               totalPages = Math.ceil(totalRecord/pageSize);
30                               pageNumber.text=(pageIndex 1).toString();
31                               totalRecordLabel.text = '总记录数:'   totalRecord.toString()            
32                       }
33                       totalPagesLabel.text = '总页数:'   totalPages;
34                       if(isCreateNavBar) createNavBar(pageIndex);
35                   }

代码下载

/Files/badwps/FlexPagingBar.rar


精彩图集

赞助商链接