Как сохранить пользовательскую сортировку после обновления данных в Datagrid при помощи события mx.events.CollectionEvent.COLLECTION_CHANGE и свойства sort ArrayCollection
View CodeACTIONSCRIPT | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | //Установим слушателя события COLLECTION_CHANGE dataGrid.addEventListener(mx.events.CollectionEvent.COLLECTION_CHANGE, onDataGridDataChange, false, 0, true); private var currentSort:mx.collections.Sort; private function onDataGridDataChange(evt:CollectionEvent):void { //получим ссылку на данные var ac:ArrayCollection = dataGrid.dataProvider as ArrayCollection; //установим слушателя на событие изменения коллекции ac.addEventListener(CollectionEvent.COLLECTION_CHANGE, onCollectionChanged,false,0,true); //если сортировка была до изменения данных, установим ее if (currentSort != null) { ac.sort = currentSort; ac.refresh(); } } private function onCollectionChanged(evt:CollectionEvent):void { if (evt.kind == CollectionEventKind.REFRESH) { var ac:ArrayCollection = evt.currentTarget as ArrayCollection; //запомним текущую сортировку currentSort = ac.sort; } } |

0 Отзывов на “Как сохранить сортировку в DataGrid при изменении DataProvider (Flex)”
Оставить отзыв