public INewTabHost<Window> GetNewHost(IInterTabClient interTabClient, object partition, TabablzControl source) { TabControlVM tcvm = new TabControlVM(); TabWindowVM twvm = new TabWindowVM() { }; twvm.TabControlVMs.Add(tcvm); InterTabWindow view = new InterTabWindow(twvm); Window window = Window.GetWindow(source); TabControlVM tvm = (TabControlVM)source.DataContext; MainWindowVM mvm = null; if(window is MainWindow) { mvm = (window as MainWindow).MainWindowVM; if (tvm.TabPanelVMs.Count == 1) { mvm.TabPanelManagerVM.TabControlVMs.Remove(tvm); } } else if(window is InterTabWindow) { mvm = (window as InterTabWindow).MainWindowVM; if (tvm.TabPanelVMs.Count == 1) { (window as InterTabWindow).TabWindowVM.TabControlVMs.Remove(tvm); } } view.MainWindowVM =mvm; view.MainWindowVM.TabPanelManagerVM.TabWindowVMs.Add(view.TabWindowVM); NewTabHost<InterTabWindow> th= new NewTabHost<InterTabWindow>(view, view.TabablzControl) ; return th; }
public INewTabHost <Window> GetNewHost(IInterTabClient interTabClient, object partition, TabablzControl source) { TabControlVM tcvm = new TabControlVM(); TabWindowVM twvm = new TabWindowVM() { }; twvm.TabControlVMs.Add(tcvm); InterTabWindow view = new InterTabWindow(twvm); Window window = Window.GetWindow(source); TabControlVM tvm = (TabControlVM)source.DataContext; MainWindowVM mvm = null; if (window is MainWindow) { mvm = (window as MainWindow).MainWindowVM; if (tvm.TabPanelVMs.Count == 1) { mvm.TabPanelManagerVM.TabControlVMs.Remove(tvm); } } else if (window is InterTabWindow) { mvm = (window as InterTabWindow).MainWindowVM; if (tvm.TabPanelVMs.Count == 1) { (window as InterTabWindow).TabWindowVM.TabControlVMs.Remove(tvm); } } view.MainWindowVM = mvm; view.MainWindowVM.TabPanelManagerVM.TabWindowVMs.Add(view.TabWindowVM); NewTabHost <InterTabWindow> th = new NewTabHost <InterTabWindow>(view, view.TabablzControl); return(th); }
public InterTabWindow(TabWindowVM value) { InitializeComponent(); _tabWindowVM = value; this.DataContext = _tabWindowVM; }