У меня есть datagrid, заполненный, как показано ниже. Когда пользователь нажимает на заголовок столбца, я хотел бы сортировать строки, используя лексикографический вид, в котором первый столбец используется первым, а остальные столбцы используются в порядке слева направо, чтобы разорвать любые связи. Как я могу это кодировать?как отсортировать файл datagrid по нескольким столбцам?
(! У меня есть один ответ, который я выложу ниже, но есть проблема - я буду в восторге, если кто-то может обеспечить лучший друг)
Вот раскладка:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" creationComplete="onCreationComplete()">
<mx:Script source="GridCode.as" />
<mx:DataGrid id="theGrid" x="61" y="55" width="466" height="317">
<mx:columns>
<mx:DataGridColumn dataField="A"/>
<mx:DataGridColumn dataField="B"/>
<mx:DataGridColumn dataField="C"/>
</mx:columns>
</mx:DataGrid>
</mx:Application>
А вот код изнанка:
import mx.collections.ArrayCollection;
import mx.collections.Sort;
import mx.collections.SortField;
import mx.controls.dataGridClasses.DataGridColumn;
import mx.events.DataGridEvent;
public function onCreationComplete():void
{
var ar:ArrayCollection = new ArrayCollection();
var ob:Object;
for(var i:int=0; i<20; i++)
{
ob = new Object();
ob["A"] = i;
ob["B"] = i%3;
ob["C"] = i%5;
ar.addItem(ob);
}
this.theGrid.dataProvider = ar;
}