В моих проектах, когда я делаю что-то подобное, я добавляю TextBox в качестве первого элемента в раскрывающемся шаблоне контента, после которого ведущий следует за элементами, которые должны быть связаны с данными.
<ComboBox>
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBox Text="{Binding Path=FilteredText"} Mode="TwoWay"/>
<ListBox ItemSource="{Binding Path=ItemsForBinding}" Mode="TwoWay" NotifyOnSourceUpdated="True" />
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
И в вашей модели представления убедитесь, что NotifyOnProperyChanged включен для свойства FilteredText, когда оно обновляется, оно вызывает «удаление» связанных элементов, я обычно использую ObservableCollection, но я знаю, что ListCollectionView имеет возможности дляфильтрует и уведомляет пользовательский интерфейс об изменении коллекции.Вы даже можете найти сторонний текст AutoCompleteBox (я использую Telerik,), и он позволит вам предварительно заполнить термины в «текстовом поле», которые вы хотите, чтобы пользователь мог фильтровать.