flex: как обновить (переинициализировать) список - PullRequest
0 голосов
/ 06 октября 2009

Я разработчик Java, который пробует Flex.

Итак, моя новая проблема такова:

У меня есть компонент списка в Flex, заполненный объектами, полученными из Java (путем привязки поставщика данных). Я добавил поддержку drag-drop в список. Все хорошо. Но я хотел иметь функцию сброса для повторной инициализации списка, а именно, вернуть перетаскиваемые элементы в список.

Я попробовал несколько вещей в обработчике события кнопки сброса, но не смог повторно инициализировать данные списка. Например:

public function resetList():void {
        trace("reset")
        listsrc.dataProvider = srv.getTerritories.lastResult
    }

«сброс» отлажен, но в списке нет изменений.

Спасибо;

Ответы [ 3 ]

0 голосов
/ 06 октября 2009

Я нашел это. На самом деле это просто. Я просто сказал:

public function resetList():void {
        trace("reset")
        srv.getTerritories.send()
    }

Потому что уже привязан; Любое изменение в поставщике данных напрямую отражается в списке.

0 голосов
/ 06 октября 2009

Другой способ сделать это - привязать элемент управления к массиву arrayCollection, который можно привязать.

[Bindable]
var listDP:Array; 

в коде mxml

listsrc.dataProvider = listDP;

в ActionScript, когда вы получаете его с сервера

listDP = srv.getTerritories.send();

Делая это таким образом, вам не нужно создавать экземпляр своего элемента управления перед запросом данных с сервера.

0 голосов
/ 06 октября 2009

try listsrc.invalidateList ();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...