If you are trying to filter hierarchical data, IIRC, there is more to it
than setting the filter function.  Try to find some old articles on how to
do it.

-Alex

On 6/1/16, 11:51 AM, "mark goldin" <[email protected]> wrote:

>Here is some code:
>override public function set dataProvider(value:Object):void
>{
>if (value)
>{
>visible = false;
>super.dataProvider = value;
>if (!(dataProvider is HierarchicalData) )
>{
>dataProvider.addEventListener('collectionChange',
>positionToPrevSelection);
>}
>visible = true;
>}
>else
>{
>super.dataProvider = null;
>validateNow();
>}
>}
>private function positionToPrevSelection(event:CollectionEvent=null):void
>{
>       for (var i:int=0;i<dataProvider.length;i++)
>{
>if (dataProvider[i].name == 'ROOT')
>{
>dataProvider.removeEventListener('collectionChange',
>positionToPrevSelection);
>dataProvider.filterFunction = filterOutRoot;
>dataProvider.refresh();
>break;
>}
>}
>}
>private function filterOutRoot(item:Object):Boolean
>{
>if (item.name == 'ROOT')
>{
>return false;
>}
>return true;
>};
>I see that the line item.name == 'ROOT' is true for one item.
>But the grid still shows ROOT.
>
>Any idea how to fix it?
>
>Thanks

Reply via email to