Я хочу отсортировать столбец сетки. Вот мой код sortCompareFunction:
protected function sortCompareFunction(obj1:Object, obj2:Object, gc:GridColumn):int
{
collator.ignoreCase=true;
return collator.compare(obj1[gc.dataField], obj2[gc.dataField]);
}
и сетка данных:
<s:DataGrid id="dataGrid" width="100%" height="100%" borderColor="#CCCCCC" borderVisible="true"
chromeColor="#CCCCCC" color="#000000" contentBackgroundColor="#8C90BB"
selectionColor="#D0E4E9" symbolColor="#FFFFFF" sortableColumns="true">
<s:columns>
<s:ArrayList>
<s:GridColumn width="150" dataField="title" headerText="Progetto"
sortCompareFunction="sortCompareFunction"></s:GridColumn>
<s:GridColumn dataField="author" headerText="Stato" width="50"></s:GridColumn>
<s:GridColumn dataField="newsdate" headerText="Scadenza"></s:GridColumn>
</s:ArrayList>
</s:columns>
<s:AsyncListView list="{FlexGlobals.topLevelApplication.PMProjs.lastResult}"/>
</s:DataGrid>
Не работает. Я не вижу стрелки в заголовке столбца, и все сортируется. Заранее благодарю за любую помощь!
Хорошо, решено заменой AsyncListView на Arraycollection:
<s:DataGrid id="dataGrid" width="100%" height="100%" borderColor="#CCCCCC" borderVisible="true"
chromeColor="#CCCCCC" color="#000000" contentBackgroundColor="#8C90BB"
selectionColor="#D0E4E9" symbolColor="#FFFFFF">
<s:columns>
<s:ArrayList>
<s:GridColumn width="150" dataField="title" headerText="Progetto"
showDataTips="title"></s:GridColumn>
<s:GridColumn dataField="author" headerText="Stato" width="50"></s:GridColumn>
<s:GridColumn dataField="newsdate" headerText="Scadenza"></s:GridColumn>
</s:ArrayList>
</s:columns>
<s:ArrayCollection list="{FlexGlobals.topLevelApplication.PMProjs.lastResult}"/>
без sortCompareFunction.
{}
). В остальном ошибка может быть только в этомcollator
классе. - person RIAstar   schedule 12.10.2012AsyncListView
. Попробуйте заменить его на целевую коллекцию ArrayCollection. - person RIAstar   schedule 12.10.2012