2010-01-18 83 views
0

我有一個高級Datagrid排序。我認爲這是默認的字符串排序。但我需要在數量上進行排序。我怎樣才能實現數字排序?高級Datagrid排序

例如:我有像1到100的行號。我需要像1,10,100那樣的數字排序。

回答

1
在你的AdvancedDataGridColumn

添加sortCompareFunction:

<mx:AdvancedDataGridColumn sortCompareFunction="NumberSorter" 
sortDescending="true" dataField="number" headerText="Formal Name" width="280"/> 

地方添加功能在腳本

<mx:Script> 
    <![CDATA[ 

     import mx.utils.ObjectUtil 
     public function NumberSorter(itemA:Object, itemB:Object):int{ 
     return ObjectUtil.numericCompare(itemA.number, itemB.number); 
    } 

    ]]> 
</mx:Script> 
0

如果基礎數據源是一個數字的簡單數組,你可以簡單地調用sort()

myArray.sort(Array.NUMERIC); 

如果您的編號rs在每個陣列輸入對象的特定字段中,您可以改爲使用sortOn()

myArray.sortOn("rowNumberField", Array.NUMERIC);