public MainWindowViewModel() { base.DisplayName = "MainWindowViewModel"; StatusVM = new StatusViewModel(); StatusVM.Busy = 0; CameraVM = new CameraViewModel(StatusVM); SpectrometerVM = new SpectrometerViewModel(StatusVM); MeasurementVM = new MeasurementViewModel(StatusVM, CameraVM, SpectrometerVM); MainWindow mainWindow = Application.Current.Windows.OfType <MainWindow>().FirstOrDefault(); CameraVM.setImageFilterUserControl(ref mainWindow.imageFilterUserControlInstance); }
public PhosResultsViewModel(CamPhosResults camResults, SpectrometerPhosResults spectroResults, CameraViewModel cameraVM) { base.DisplayName = "PhosResultsViewModel"; _cameraVM = cameraVM; _phosImages = camResults.Images; _phosFilteredImages = camResults.FilteredImages; _phosSpectra = spectroResults.Spectra; CurrentPhosItem = 1; CurrentSpectraItem = 1; SaveFolderPath = Properties.Settings.Default.SaveFolderPath; _startTimeStamp = camResults.StartTimeStamp; _spectrumStartTimeStamp = spectroResults.StartTimeStamp; CommandSetFolder = new RelayCommand(param => SetFolder(), cc => _busy == false); CommandPreviousPhosItem = new RelayCommand(param => PreviousPhosItem(), cc => _busy == false); CommandNextPhosItem = new RelayCommand(param => NextPhosItem(), cc => _busy == false); CommandPreviousSpectraItem = new RelayCommand(param => PreviousSpectraItem(), cc => _busy == false); CommandNextSpectraItem = new RelayCommand(param => NextSpectraItem(), cc => _busy == false); CommandSave = new RelayCommand(param => Save(), cc => _busy == false); CommandSaveAll = new RelayCommand(param => Save(true), cc => _busy == false); }