void tagsList_IsFilterChanged(object sender, EventArgs e) { ToggleButton includedClearToggleButton = VisualTreeUtils.findVisualChildByName <ToggleButton>(dataGrid, "includeClearToggleButton"); ToggleButton excludedClearToggleButton = VisualTreeUtils.findVisualChildByName <ToggleButton>(dataGrid, "excludeClearToggleButton"); TagItem item = (TagItem)sender; if (item.IsIncluded || item.IsExcluded) { mediaCollectionView.TagFilter.Add(item); if (item.IsIncluded) { includedClearToggleButton.IsEnabled = true; includedClearToggleButton.IsChecked = true; } else { excludedClearToggleButton.IsEnabled = true; excludedClearToggleButton.IsChecked = true; } } else { mediaCollectionView.TagFilter.Remove(item); int nrIncluded = 0, nrExcluded = 0; foreach (TagItem tagItem in mediaCollectionView.TagFilter) { if (tagItem.IsIncluded) { nrIncluded++; } if (tagItem.IsExcluded) { nrExcluded++; } } if (nrExcluded == 0) { excludedClearToggleButton.IsEnabled = false; excludedClearToggleButton.IsChecked = false; } if (nrIncluded == 0) { includedClearToggleButton.IsEnabled = false; includedClearToggleButton.IsChecked = false; } } MediaCollectionView.refresh(); }
private void excludeClearToggleButton_Unchecked(object sender, RoutedEventArgs e) { MediaCollectionView.TagFilter.RemoveAll((i) => i.IsExcluded == true); foreach (TagItem item in tagsList) { item.IsExcluded = false; } MediaCollectionView.refresh(); ToggleButton excludedClearToggleButton = VisualTreeUtils.findVisualChildByName <ToggleButton>(dataGrid, "excludeClearToggleButton"); excludedClearToggleButton.IsEnabled = false; excludedClearToggleButton.IsChecked = false; }