установить поставщик данных в actionscript - PullRequest
0 голосов
/ 25 ноября 2010

У меня есть свойство datagrid w / dataProvider, установленное в MXML как:

dataProvider="{pagedResult.lastResult}"

Как установить провайдер данных в ActionScript? У меня есть:

protected function getResult (event:FlexEvent):void
{
pagedResult.token = mydata.paged();
adg1.dataProvider = pagedResult.lastResult;
}

но я делаю что-то не так, как это не работает

Ответы [ 2 ]

1 голос
/ 26 ноября 2010

Ваш код выглядит солидно, я думаю, проблема в том, что вам нужно конвертировать его. Вы не сказали, какие данные возвращает ваш сервис, но для целей этого примера я буду использовать массив

Попробуйте что-то вроде этого

var myCollection : ArrayCollection = new ArrayCollection(pagedResult.lastResult as Array);
adg1.dataProvider = myCollection;
0 голосов
/ 26 ноября 2010

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

Во-вторых, в качестве другого упомянутого ответа вы захотите преобразовать свои результаты в ArrayCollection, вы можете найти некоторые полезные функции в классе mx.utils.ArrayUtil .

Наконец, при работе с большими наборами данных важно обновлять коллекцию ArrayCollection напрямую, а не всегда создавать новую.Сетка list / datagrid будет автоматически перерисовываться и обновляться оптимально, без необходимости беспокоиться об этом, пока вы добавляете / удаляете / etc через только что созданную коллекцию ArrayCollection.

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