private void MatchGenreToViewSource(GenreItemData genreItem) { bool itemMatchFilter = _libraryViewData.CheckGenresFilters(genreItem, DuplicateGenresCheckBox.IsChecked == true, EmptyGenresCheckBox.IsChecked == true); if (!itemMatchFilter) { GenresView.Items.Remove(genreItem); } }
/// <summary> /// Checks current filters on a <see cref="GenreItemData"/> instance. /// </summary> /// <param name="genreItem"><see cref="GenreItemData"/></param> /// <param name="checkDuplicates">Filters duplicates names.</param> /// <param name="checkEmpty">Filters invalid names.</param> /// <returns><c>True</c> if all filters apply; <c>False</c> otherwise.</returns> /// <exception cref="ArgumentNullException"><paramref name="genreItem"/> is <c>Null</c>.</exception> public bool CheckGenresFilters(GenreItemData genreItem, bool checkDuplicates, bool checkEmpty) { if (genreItem == null) { throw new ArgumentNullException(nameof(genreItem)); } return(ApplyFilters(new List <GenreItemData> { genreItem }, checkDuplicates, checkEmpty ).Any()); }