/// <summary> /// Create market scanner for selected market data provider /// </summary> private void CreateScannerWindowExecute() { // Try to find scanner window if already created for selected provider MarketScannerWindow scannerWindow = (MarketScannerWindow)FindWindowByTitle(SelectedMarketDataProvider.ProviderName); // if scanner is already created, just activate it, otherwise create new scanner window for slected data provider if (scannerWindow != null) { scannerWindow.WindowState = WindowState.Normal; scannerWindow.Activate(); } else { scannerWindow = new MarketScannerWindow(); MarketScannerWindowViewModel scannerWindowViewModel = new MarketScannerWindowViewModel(scannerWindow, SelectedMarketDataProvider, MarketDataProviders); // Add scanner window VeiwModel in collection for displaying on Market Scanner Dashboard ScannerWindowViewModels.Add(scannerWindowViewModel); scannerWindow.DataContext = scannerWindowViewModel; scannerWindow.Title = SelectedMarketDataProvider.ProviderName; scannerWindow.Closing += scannerWindow_Closing; scannerWindow.Show(); } // Detach DataContext and close 'New Market Scanner' window _newMarketScannerWindow.DataContext = null; _newMarketScannerWindow.Close(); }
/// <summary> /// Focus certain market scanner window /// </summary> /// <param name="param">ProviderName</param> private void FocusScannerWindowExecute(object param) { MarketScannerWindow scannerWindow = (MarketScannerWindow)FindWindowByTitle((string)param); if (scannerWindow != null) { scannerWindow.WindowState = WindowState.Normal; scannerWindow.Activate(); } }