public async void BeginOpenImagesAsync() { string[] files; if ((files = getFileNames("Open Dicom Image(s)", true)) != null) { var pi = ProgressService.CreateNew("Loading Dicom Image(s)...", false); var progress = new Progress <double>(x => { pi.ProgressAmount = (int)x; }); DicomImageObject openedObject = null; await Task.Run(async() => { try { openedObject = await DicomLoader.LoadDicomImageAsync(files, progress); } catch (Exception e) { Messenger.Default.Send(new NotificationMessage("Could not open file: " + e.Message)); } }); if (openedObject != null) { Messenger.Default.Send(new RTDicomViewer.Message.RTObjectAddedMessage <DicomImageObject>(openedObject)); } ProgressService.End(pi); } }
public async void BeginOpenEgsDoseAsync() { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Multiselect = false; openFileDialog.Title = "Open 3D Dose File"; if (openFileDialog.ShowDialog() == true) { var progressItem = ProgressService.CreateNew("Loading 3DDose File...", false); var progress = new Progress <double>(x => { progressItem.ProgressAmount = (int)x; }); EgsDoseObject openedObject = null; await Task.Run(async() => { try { openedObject = await DicomLoader.LoadEgsObjectAsync(openFileDialog.FileName, progress); } catch (Exception e) { Messenger.Default.Send(new NotificationMessage("Could not open file: " + e.Message)); } }); if (openedObject != null) { Messenger.Default.Send(new RTDicomViewer.Message.RTObjectAddedMessage <EgsDoseObject>(openedObject)); } ProgressService.End(progressItem); } }