private void CloseTab(bool closeApp, TabPage tp) { if (tp != tabControl1.TabPages[0]) //not the first tab! { AppWrapperControl aw = tp.Controls[0] as AppWrapperControl; if (aw != null) { aw.CloseApp = closeApp; aw.DieDieDie(); tabControl1.TabPages.Remove(tp); } } }
public void AddAppTab(IntPtr child) { if (tabControl1.TabPages[child.ToString()] != null) { throw new Exception("That window is already on a tab"); } StringBuilder sb = new StringBuilder(); WinApi.GetWindowText(child, sb, 30); string title = sb.ToString(); if (title != null && title.Trim().Length > 0) { TabPage tp = new TabPage(sb.ToString()); tp.Name = child.ToString(); tabControl1.TabPages.Add(tp); AppWrapperControl a = new AppWrapperControl(); a.Dock = DockStyle.Fill; tp.Controls.Add(a); a.Child = child; } }