Flex - Сохранение нового порядка элементов HorizontalList через AMF - PullRequest
0 голосов
/ 17 декабря 2009

Я работал с перетаскиванием элементов внутри горизонтального списка во Flex. Это работает нормально, но теперь мне нужно сохранить новый заказ через AMF в моей базе данных. Я уверен, что это довольно легко, но я еще не понял это.

Есть ли способ циклически (после переупорядочения) всех элементов, чтобы я мог получить для каждого элемента его (новый) индекс?

И я заметил, что даже если я изменю порядок, порядок в dataProvider всегда одинаков ...

Это мой список:

<mx:HorizontalList id="horizontalList"
    allowMultipleSelection="true"
    allowDragSelection="true"
    dragEnabled="true"
    dropEnabled="true"
    dragMoveEnabled="true"
    labelField="lbl"
    iconField="src"
    itemRenderer="CustomItemRenderer_gallery"
    columnCount="5"
    columnWidth="125"
    rowHeight="125"
    horizontalScrollPolicy="on"
    doubleClickEnabled="true"
    click="{click(event);}"
    dragDrop="handleBtnReorder(event)"
    doubleClick="doubleClick(event);" />

1 Ответ

0 голосов
/ 18 декабря 2009

Я бы просто перебрал данные DataProvider, в который вы перетаскивали элементы ... при циклическом сохранении нового порядка (i) в переменной в вашем ArrayCollection, заполняющем dataProvider ... затем преобразовал бы ArrayCollection в массив, чтобы передается на сервер для обработки.

что-то вроде:

for(var i:int = 0; i < yourList.dataprovider.length; i++)
{
     yourList.dataProvider.getItemAt(i).order = i;
}
// then convert the ArrayCollection to an Array and pass to your RemoteObject.
...