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
