2012-12-13 70 views
1

我需要使用GXT本地分頁(PagingModelMemoryProxy)自定義一列的標題排序結果。這裏是我的代碼:如何刷新GXT本地分頁(PagingModelMemoryProxy)標題排序

PagingModelMemoryProxy proxy = new PagingModelMemoryProxy(data) { 
     @Override 
     public void load(DataReader<PagingLoadResult<? extends ModelData>> reader, Object loadConfig, 
       AsyncCallback<PagingLoadResult<? extends ModelData>> callback) { 
      if (loadConfig instanceof PagingLoadConfig) { 
       PagingLoadConfig pagingConfig = (PagingLoadConfig) loadConfig; 

       // sort order must be changed because CRITICAL has lowest number 
       SortInfo sortInfo = pagingConfig.getSortInfo(); 
       if (ActiveAlarmBean.SEVERITY.equals(sortInfo.getSortField())) { 
        if (SortDir.ASC == sortInfo.getSortDir()) { 
         sortInfo.setSortDir(SortDir.DESC); 
        } 
        else { 
         sortInfo.setSortDir(SortDir.ASC); 
        } 
       } 
      } 
     } 
    } 

但頭排序(升序或降序)之後我重寫「負載」不再起作用。我真正想要做的是,當用戶點擊升序時,它會做降序排序行爲,降序時也會做相反的升序排序行爲。

回答

0

排序應爲您的裝載機完成像這樣的東西:

loader.setSortField("id_field"); 
if (loader.getSortDir().equals(SortDir.DESC)){ 
    loader.setSortDir(SortDir.ASC); 
} else { 
    loader.setSortDir(SortDir.DESC); 
}