Вы можете создать новое расширенное событие сортировки сетки данных и отправить его в сетку после того, как для него заданы иерархические данные (к сожалению, мне пришлось использовать callLater, чтобы дать сетке время для внутренней обработки коллекции, кажетсяназначения для dataProvider в ADG иногда бывают асинхронными)
var advancedDataGridEvent : AdvancedDataGridEvent = new AdvancedDataGridEvent(AdvancedDataGridEvent.SORT, false, true);
advancedDataGridEvent.columnIndex = columnIndex;
advancedDataGridEvent.dataField = dataField;
dispatchEvent(advancedDataGridEvent);
Этот код относится к расширению ADG, поэтому вы бы хотели, чтобы dispatchEvent действительно находился в вашем экземпляре сетки, если вы не создаетерасширение.
Также примечание из кода:
//setting sortDescending=true on a column does not work as expected. so, until a solution
//is found, this works just as well. the event that is dispatch just tells the column
//to reset. so, one resorts ascending (the default), while a second resorts descending.
//however, this second is only dispatched if defaultSortDesc is true on the grid.
if (defaultSortDesc)
{
dispatchEvent(advancedDataGridEvent);
}
Отправляет событие дважды, чтобы перевернуть сортировку.