private void MatchAlbumArtistToViewSource(AlbumArtistItemData albumArtistItem) { bool itemMatchFilter = _libraryViewData.CheckArtistAlbumFilters(albumArtistItem, DuplicateAlbumArtistsCheckBox.IsChecked == true, EmptyAlbumArtistsCheckBox.IsChecked == true); if (!itemMatchFilter) { AlbumArtistsView.Items.Remove(albumArtistItem); } }
/// <summary> /// Checks current filters on a <see cref="AlbumArtistItemData"/> instance. /// </summary> /// <param name="albumArtistItem"><see cref="AlbumArtistItemData"/></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="albumArtistItem"/> is <c>Null</c>.</exception> public bool CheckArtistAlbumFilters(AlbumArtistItemData albumArtistItem, bool checkDuplicates, bool checkEmpty) { if (albumArtistItem == null) { throw new ArgumentNullException(nameof(albumArtistItem)); } return(ApplyFilters(new List <AlbumArtistItemData> { albumArtistItem }, checkDuplicates, checkEmpty ).Any()); }