2009-10-06 2 views
0

Я разработчик Java, который пытается использовать Flex.flex: как обновить (переинициализировать) список

Так что моя новая проблема такова:

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

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

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

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

Thanks;

+0

Вы уверены, что srv.getTerritories.lastResult содержит новое значение? – Amarghosh

+0

Нет, он содержит старое значение, но это не проблема, поскольку я хотел, чтобы список имел старые значения. Я хочу, чтобы список имел начальные значения. – javanes

ответ

0

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

[Bindable] 
var listDP:Array; 

в MXML код

listsrc.dataProvider = listDP; 

в Actionscript всякий раз, когда вы получаете его с сервера

listDP = srv.getTerritories.send(); 

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

0

try listsrc.invalidateList();

+0

нет не работает. никаких изменений в списке. – javanes

+0

, тогда вам нужно сохранить копию массива, который вы предоставляете в качестве dataProvider, в список. поскольку, когда вы их вытаскиваете, они будут удалены из источника dataProvider, переименование одного и того же массива к нему не принесет пользы, поскольку элементы будут удалены. – TheBrain

0

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

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

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

Смежные вопросы