A general approach to filter popup items is to handle the DataViewBase.ShowFilterPopup event. In this example, we maintain items that were filtered by the current column and remove items filtered by other grid columns. For this, we perform the following steps:
1. Exclude the current column from the grid's filter. For this, we use the ClearColumnFilter method.
2. Filter items with the resulting filter criteria using our internal ExpressionEvaluator class.
[C#]ExpressionEvaluatorevaluator=newExpressionEvaluator(TypeDescriptor.GetProperties(source.FirstOrDefault()),criteria);IEnumerable<object>filteredCollection=evaluator.Filter(source).OfType<object>();
3. From the e.ComboBoxEdit.ItemsSource collection, remove all items except special items and add items that meet the filter condition.