private void AddCoinImage(WindowCommandContext context) { try { var fileName = _dialogService.ShowOpenFileDialog(OpenFileDialogFilter); if (string.IsNullOrEmpty(fileName)) { return; } var imageBytes = _imageReaderService.ReadImage(fileName); imageBytes.GetOrCreateCachedImage(_imageCacheService); var image = new Image { Content = imageBytes, }; AddImage(image); SelectedImage = image; SetDirty(); } catch (NotSupportedException ex) { context.Window.ThrowUnableToLoadImageErrorMessageBox(ex); } catch (Exception ex) { context.Window.ThrowUnknownErrorMessageBox(ex); } }
private void RemoveCoinImage(WindowCommandContext context) { try { if (SelectedImage == null) { return; } var itemToRemove = SelectedImage; SelectedImage = Images.PreviousOrNext(itemToRemove); Images.Remove(itemToRemove); _imageCacheService.Remove(itemToRemove.Content); SetDirty(); } catch (Exception ex) { context.Window.ThrowUnknownErrorMessageBox(ex); } }