If you find yourself binding your RadGridView to objects that are dynamically generated by Castle's DictionaryAdapter.
You might be surprised by the expressions that are generated by the ExpressionEditor involve a mysterious CastleDictionaryAdapterType like
when you were expecting it to be:
where IDataRecord is the interface your run-time instances are generated from by DictionaryAdapter
Despite the fact that CastleDictionaryAdapterType implements your IDataRecord (and a bunch of other things) you won't be able to directly cast between them as your FilterDescriptor requires
The solution is to re-write the expression that ExpressionEditor.Expression property gives you. Here's a simple expression visitor that does that:
You can use it like this (I've modified the ExpressionEditor filtering RadGridView Telerik sample)
What is needed here is to provide a way to signal to the ExpressionEditor the specific type/interface to use, as opposed to letting the control figure it out from its Item property.