There are 2 main problems in this functionality: A) User has to click the filter check box twice to get the state changed for the first time. That is unacceptable, It must work from first click from first click check box must change its state. B) Parameters of FilterChanging event are absolutely useless and what is worse they even lie about real state of the filter. C) If I want to edit in column editor FilterDescriptor property of the column some maybe old dialog window appears because whatever I set here it does not change anything.