Я хочу применить фильтр к ListBox
соответственно свойству IsSelected
CheckBox
.
На данный момент у меня есть что-то вроде этого.
1008 * XAML *
<CheckBox Name="_filterCheckBox" Content="Filter list" Checked="ApplyFilterHandler"/>
<ListBox ItemsSource="{Binding SomeItems}" />
CodeBehind
public ObservableCollection<string> SomeItems { get; private set; }
private void ApplyFilterHandler(object sender, RoutedEventArgs e)
{
if (_filterCheckBox.IsChecked.Value)
CollectionViewSource.GetDefaultView(SomeItems).Filter += MyFilter;
else
CollectionViewSource.GetDefaultView(SomeItems).Filter -= MyFilter;
}
private bool MyFilter(object obj)
{
return ...
}
Это работает, но это решение похоже на старомодный способ (Windows Forms).
Вопрос:
Можно ли добиться этого с помощью Bindings / в XAML?
Спасибо за ваше время.