public DeleteDocumentHandler GetDeleteDocumentHandler() { if (_deleteDocumentHandler == null) { _deleteDocumentHandler = new DeleteDocumentHandler(); } return(_deleteDocumentHandler); }
private void OnDeleteClicked(object sender, MouseButtonEventArgs e) { var document = (DocumentViewModel)((FrameworkElement)sender).DataContext; var result = MessageBox.Show($"Ben je zeker dat je document {document.Beschrijving} van " + $"{document.Correspondent} voor {document.VoorWie} op datum " + $"{document.DatumOntvangen:dd-MM-yyy} en álle daaraan gerelateerde scans " + $"wil verwijderen ?", "Document verwijderen", MessageBoxButton.YesNo, MessageBoxImage.Question); if (result == MessageBoxResult.No) { return; } var warnings = DeleteDocumentHandler.Handle(new DeleteDocumentCommand { Id = document.Id }); var dataContext = (ObservableCollection <DocumentViewModel>)FoundItemsDataGrid.DataContext; var doc = dataContext.Single(x => x.Id == document.Id); dataContext.Remove(doc); if (!warnings.Any()) { return; } var message = warnings .Aggregate("Sommige bestanden konden niet verwijderd worden:\n", (current, warning) => $"{current}-{warning}\n"); throw new ScanMonitorException(message); }