public void OpenViewChildOnStart(string typeOfWin) { //find type of view model for this type of win Type typeViewModel = _dictKTypeWindowVTypeViewModelChild. FirstOrDefault(a => a.Key.ToString() == typeOfWin).Value; if (typeViewModel == null) { return; } //than find view model instance BaseViewModelChildWin viewMod = _dictKViewModelVView.FirstOrDefault(a => a.Key.GetType() == typeViewModel).Key; Type type = Type.GetType(typeOfWin + ", Terminal"); //than create win _dictKViewModelVView[viewMod] = (Window)Activator.CreateInstance(type); // viewMod.RegisterWindow(_dictKViewModelVView[viewMod]); Window win = _dictKViewModelVView[viewMod]; CUtilWin.ShowActivated(ref win); win.Closed += new EventHandler(OnChildWindowClosed); // return win; }
public void OpenAuthWindow(int connId, string stockName) { _kernelTerminal = CKernelTerminal.GetKernelTerminalInstance(); AuthWindow aw = (AuthWindow)_kernelTerminal.ViewModelDispatcher.OpenChildWindow <AuthWindow>(false); aw.Left = this.Left + 30; aw.Top = this.Top + 30; aw.SetParams(connId, stockName); Window win = (Window)aw; CUtilWin.ShowActivated(ref win); /* * AuthWindow aw = (AuthWindow) _kernelTerminal.ViewModelDispatcher.GetViewChild<AuthWindow>(); * aw.SetParams(connId, stockName); * aw.Closed += new EventHandler(aw_Closed); * aw.ShowDialog(); */ }
/// <summary> /// Get (creates if not exist) child window and /// show it activated (if need) /// /// ///Call from /// ///KernelTerminal.OpenChildWindow ///MarketViewModel.ShowChangeInstrumentWindow ///ConnectionWindow.OpenAuthWindow ///VmWindow.OpenDetailedVM /// </summary> public Window OpenChildWindow <TChildWindow>(bool showAtStartup = true) where TChildWindow : Window { try { Window win = GetViewChildInstance <TChildWindow>(); if (showAtStartup) { CUtilWin.ShowActivated(ref win); } win.Closed += new EventHandler(OnChildWindowClosed); return(win); } catch (Exception e) { Error("OpenchildWindow", e); return(null); } }