Хочу сделать фильтрацию для WPF, но при выборе элемента comboBox он не сразу фильтрует DataGrid

private void ComCat_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var tbx = sender as ComboBox;
            if (tbx.Text != "")
            {
                ConGrid.ItemsSource = context.Book.Where(x =>
                            x.CategoryType.Category.Contains(tbx.Text)).ToList();
            }
            else
            {
                ConGrid.ItemsSource = context.Book.ToList();
            }


        }

При выборе элемента 1й раз он ничего не изменит в DataGrid, если 2й раз выбрать элемент то он выдаст прошлый результат фильтрации. Как исправить?

<DataGrid x:Name="ConGrid" Margin="5,133,5,10" AutoGenerateColumns="False" CanUserAddRows="False">
            <DataGrid.Columns>
                <DataGridTextColumn Header="Name" Binding="{Binding Name}" Width="*"/>
                <DataGridTextColumn x:Name="BAuth" Header="Author" Binding="{Binding AuthorType.Author}" Width="*"/>
                <DataGridTextColumn Header="Category" Binding="{Binding CategoryType.Category}" Width="*"/>
            </DataGrid.Columns>
</DataGrid>
<ComboBox x:Name="ComAuth" HorizontalAlignment="Left" VerticalAlignment="Top" Width="167" Margin="428,104,0,0" Height="24" SelectionChanged="ComAuth_SelectionChanged"/>
<ComboBox x:Name="ComCat" HorizontalAlignment="Left" VerticalAlignment="Top" Width="157" Margin="619,103,0,0" Height="24"  SelectionChanged=""/>
<Label Content="Автор" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="429,76,0,0" Width="82"/>
<Label Content="Раздел" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="621,75,0,0" Width="82"/>

XAML


Ответы (0 шт):