Flex 3 ComboBox: filtro xmllistCollection DataSource
-
18-09-2019 - |
Pergunta
(Estou usando o CairnGorm) Eu tenho um ComboBox que exibe itens formam uma XMLListCollection que está no meu modelo. Quero ver apenas os itens (xml) cujas propriedades "enviadas" são falsas .. como item.sent == 'false'. Esse filtro deve se aplicar apenas a esse combos específico, nem tudo o que está vinculado à fonte XMLListCollection. E, é claro, ele deve atualizar e atualizar o filtro se a fonte mudar.
Como eu posso fazer isso? Estou tentando usar o FilterFunction, mas não entendo como funciona ... obrigado
Solução
Na verdade, você não precisa copiar todos os dados, como diz Christophe. Você pode criar outro ListCollectionView
que na verdade é uma visão de alguma lista e aplique filtro a ele. Então se xmlListCollection
É sua coleção, você pode tentar o seguinte código:
var listView:ListCollectionView = new ListCollectionView(xmlListCollection.list);
listView.filterFunction = someFunction;
listView.refresh();
listView
deve estar sempre em sincronia com sua coleção, a menos que você troque subjacente xmlListCollection
fonte ou lista.