Управление изменениями в дочерних коллекциях и их свойствах - PullRequest
0 голосов
/ 06 января 2012

Как во Flex лучше всего управлять изменениями свойств дочерней коллекции, в частности, уведомляя родительский объект об изменении свойства в дочерней коллекции.

package
{
    [Bindable]
    public class Author
    {
        public var firstName:String;
        public var lastName:String;
        public var books:ArrayCollection;

        public function get dateOfFirstBookPublished():Date
        {
            if (books != null) {
                return books[0].datePublished;
            }
            return null;
        }
    }

}

package
{
    [Bindable]
    public class Book
    {
        public var name:String;
        public var datePublished:Date;
    }

}

Как я могу уведомить автора при появлении книгиизменил и обновил метод dateOfFirstBookPublished?Любая помощь приветствуется.

1 Ответ

0 голосов
/ 06 января 2012

Экземпляр ArrayCollection отправляет CollectionEvent.COLLECTION_CHANGE каждый раз, когда вы добавляете / удаляете элементы из него. Вы можете прослушать это событие.

author.addEventListener(CollectionEvent.COLLECTION_CHANGE, onChange);

public function onChange(event:CollectionEvent):void
{
    //your logic here
}
...