public MainWindow()
        {
            InitializeComponent();

            SourceInitialized += HandleSourceInitialized;

            // temporary setup
            _monitorModel = new MultiMonController();
            DataContext = _viewModel = new ViewModel(_monitorModel);
        }
        public ViewModel(MultiMonController monitorModel)
        {
            _monitorModel = monitorModel ?? new MultiMonController();

            Monitors = new ObservableCollection<MonitorVM>(_monitorModel.Monitors.Select(a=>new MonitorVM(a)));
        }
 public MonitorModel()
 {
     _controller = new MultiMonController();
 }
 public MonitorModel()
 {
     _controller = new MultiMonController();
 }