private void WorkbookFilters_KeyUp(object sender, KeyEventArgs e) { if (e.Key == Key.Delete) { FilterViewModel viewModel = DataContext as FilterViewModel; if (viewModel == null) { return; } var selectedItems = WorkbookFilters.SelectedItems; List <IFilterIdentifier> deleteItems = new List <IFilterIdentifier>(); foreach (UserControl item in selectedItems) { IFilterIdentifier filterId = item.DataContext as IFilterIdentifier; if (filterId != null) { deleteItems.Add(filterId); } } viewModel.DeleteFilters(deleteItems); } }