You can go through the full passage and flip your own filtered combo box. Check out this code and see if it helps.
XAML:
<ComboBox x:Name="myComboBox" TextBoxBase.TextChanged="myComboBox_TextChanged" DisplayMemberPath="myDisplay" IsEditable="True" StaysOpenOnEdit="True" SelectionChanged="myComboBox_SelectionChanged" />
Then under the hood:
ObservableCollection<myType> myCollection; public ICollectionView cvs { get; set; } public MyWindow() { InitializeComponent(); myCollection = new ObservableCollection<myType>(); cvs = CollectionViewSource.GetDefaultView(myCollection); myComboBox.ItemsSource = cvs; cvs.Filter = FilterOut; } private void myComboBox_TextChanged(object sender, TextChangedEventArgs e) { cvs.Refresh(); } private bool FilterOut(object input) { myType item = (myType)input; return ( string.IsNullOrEmpty(myComboBox.Text) || item.myDisplay.Contains(myComboBox.Text)); }
source share