2016-07-05 19 views
0

在我的拆分應用程序的主視圖中,我有一個包含採購訂單項目的清單。最初,該列表按訂單號下降。我通過在XML的視圖聲明定義分類器實現這一點:如何通過用戶事件更改SAPUI5中列表的排序或排序?

<List 
    id="listBestellungen" 
    noDataText="{i18n>masterListNoDataText}" 
    growing="true" 
    growingScrollToLoad="true" 
    updateFinished="onUpdateFinished" 
    selectionChange="onSelectionChange" 
    items="{ 
     path: '/PO_HeadInfoSet', 
     sorter: { 
      path: 'POHI_Ebeln', 
      descending: true 
     } 
        }" 
        mode="SingleSelectMaster" 
        > 
... 

然後,我有一個SortSelect鍵式與壓事件「onSorting」頁腳。

的onSorting功能看起來是這樣的:當我點擊排序按鈕

onSorting: function(oEvent) { 
     var oView = this.getView(); 
     var oList = oView.byId("listBestellungen"); 
     var oBinding = oList.getBinding("items"); 

     var SORTKEY = "POHI_Ebeln"; 
     var DESCENDING = false; 
     var GROUP = false; 
     var aSorter = []; 

     aSorter.push(new sap.ui.model.Sorter(SORTKEY, DESCENDING, GROUP)); 
     oBinding.sort(aSorter); 
    } 

的onSorting函數被調用。我還可以看到,綁定中的排序方向發生了變化。

但是爲什麼或者如何改變UI中列表的排序呢?

親切的問候

邁克爾

+0

您真的想要什麼嗎?因爲正如你所描述的那樣,似乎一切正常,正如所想的那樣! – carlosfcmendes

+0

你試過oBinding.refresh()嗎? – slkorolev

回答

0

嘗試刷新模型。由於列表綁定到模型,所以會刷新所有綁定對象(您要更改的UI元素)

var oModel = this.getView().getModel(); 
oModel.refresh();