hi i had the same problem and eventually come up with one that could help you. 
the only problem is that i can't get the checkbox filter to work with the rest 
maybe after trying out this you can help solve the checkbox issue. this filter 
function uses a combination of a slider, two comboboxes and radio buttons. hope 
we can help one another. let me know how it goes...


////////////////////////filters//////////////////////////////////////////////////////////////////////////
                        
                        private var sliderFromValue : Number = 0;
                        private var sliderToValue : Number = 3000000;
                        private var selectedCity : String = "All";
                private var selectedLocation : String = "All";
                private var selectedValue: Boolean;
                private var poolSelected: Boolean = false;

                        private function onSliderChange(event:SliderEvent):void
                        {
                        var slider:Slider = Slider(event.currentTarget) ;
                        sliderFromValue = priceSlider.values[0];
                        sliderToValue = priceSlider.values[1];                  
        
                        filterGrid() ;
                        currentState = '';
                        }
                        private function cityChangeHandler(event:Event):void
                {
                if( city_cb.selectedItem != null )
                        selectedCity = city_cb.selectedLabel;
                filterGrid();
                currentState = '';
                }
        
                private function locationChangeHandler(event:Event):void
                {
                if( lct_cb.selectedItem != null )
                        selectedLocation = lct_cb.selectedLabel;
                filterGrid();
                currentState = '';
                }
                
                private function categoryChangeHandler(event:Event):void
                {
                        if(category.selectedValue != null)
                                selectedValue = category.selectedValue;
                        filterGrid();
                        currentState = '';
                }
                
                private function poolFilter( ):void
            {
                /* if (poolSelected)
                    pool_ckb.selected = poolSelected;                
                    
                filterGrid();
                currentState = '';  */
            }
                        
                        private function filterGrid() :void
                        {
                        dataAr.filterFunction=myFilterFunction;
                        dataAr.refresh();
                        }
                        
                        private function myFilterFunction(item:Object): Boolean
                        {
                        return(item.price >= sliderFromValue && item.price <= 
sliderToValue)&& 
                        (item.city == selectedCity || selectedCity == "All") && 
                        (item.location == selectedLocation || selectedLocation 
== "All") && 
                        (item.category == category.selectedValue);              
                                 
                        }

the onSliderChange function is used by the slider(with two thumbs) to filter 
the array collection, cityChangeHandler and locationChangeHandler are used by 
the combo boxes to filter the same array collection, categoryChangeHandler is 
used by a radio group, the poolFilter function which doesn't work is meant to 
be used by the checkbox to filter that's where i have the problem. when you 
have the individual filters working you place them i one function which is 
myFilterFunction to be used to filter the array collection. then you call the 
myFilterFunction to be as the main filter function for the datagrid and also 
refresh the datagrid once filtered. this is the filterGrid() function. hope 
this helps you, am just an armature but that solution works 80%. hope there are 
some flex gurus who can polish that up to make the checkbox filter work. 

Reply via email to