Flex 4 - функция вызова при изменении поставщика данных - PullRequest
2 голосов
/ 06 февраля 2011

Как настроить функцию, вызываемую при изменении длины DataProvider?

Ответы [ 3 ]

1 голос
/ 06 февраля 2011

Вот хорошее решение с использованием события «CollectionEvent.COLLECTION_CHANGE»:

http://blog.flexexamples.com/2008/12/16/detecting-when-the-data-provider-of-a-datagrid-control-changes-in-flex/

0 голосов
/ 14 мая 2013

Единственный способ, которым я смог это сделать, - сделать привязку в коде ActionScript.Примерно так:

protected function creationCompleteHandler(event:FlexEvent):void {
    BindingUtils.bindSetter(myHandleFunction, myList, "dataProvider");
}

myHandleFunction получает параметром объект с типом свойства binded.

0 голосов
/ 06 февраля 2011

Если вы работаете с ICollectionView (он же ArrayCollection), вы можете добавить прослушиватель событий для события collectionChange.

Документы: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/collections/ListCollectionView.html#event:collectionChange

Если вы находитесь внутри документа MXML, свойство dataProvider компонента пользовательского интерфейса должно быть источником привязки данных. Таким образом, вы можете просто {myComponent.dataProvider.length} связать значение с чем-то другим, если это вариант использования.

...