Flex 3 combobox: источник данных фильтра XMLListCollection - PullRequest
1 голос
/ 05 января 2010

(я использую Cairngorm) У меня есть выпадающий список, который отображает элементы из коллекции XMLListCollection, которая находится в моей модели. Я хочу просматривать только те элементы (XML), чьи свойства "sent" имеют значение false .. например item.sent == 'false' Этот фильтр должен применяться только к этому конкретному списку, а не ко всему, что связано с источником XMLListCollection. И, конечно, он должен обновлять и обновлять фильтр, если источник меняется ..

Как я могу это сделать? Я пытаюсь использовать filterFunction, но не понимаю, как это работает ... спасибо

1 Ответ

2 голосов
/ 05 января 2010

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

var listView:ListCollectionView = new ListCollectionView(xmlListCollection.list);
listView.filterFunction =  someFunction;
listView.refresh();

listView всегда должен синхронизироваться с вашей коллекцией, если только вы не поменяете местами xmlListCollection источник или список.

...