void diagramIO_DiagramFileDeleted(object sender, DiagramFileDeletedEventArgs e) { Task.Factory.StartNew(() => PreviewDiagrams.FirstOrNone(pd => FileComparer.Equals(pd.Diagram.File, e.DeletedDiagramFile)).Apply(existingPreview => { OnDiagramDeleted(existingPreview.Diagram); PreviewDiagrams.Remove(existingPreview); }), CancellationToken.None, TaskCreationOptions.None, _uiScheduler); }
private async Task DeleteDiagramAsync(PreviewDiagramViewModel preview) { try { await _diagramIO.DeleteAsync(preview.Diagram); PreviewDiagrams.Remove(preview); } catch (Exception e) { _notifications.Notify(new ExceptionNotification(e)); } }