private void MainTabControl_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { if (e.ClickedItem.Tag is ICustomTabControl) { foreach (ToolStripButton item in MainTabControl.Items) item.Checked = (item == e.ClickedItem); //((UserControl)item.Tag).Visible = item.Checked; ICustomTabControl NewActiveControl = e.ClickedItem.Tag as ICustomTabControl; if (NewActiveControl != null) { using (new LockWindowUpdate(this.Handle)) { ActiveControl = NewActiveControl; //remove all ICustomTabControl's panel1.Controls.Clear(); panel1.Controls.Add(ActiveControl as Control); ActiveControl.Dock = DockStyle.Fill; //ActiveControl.BringToFront(); SABnzbd_StatusUpdated(Global.SABnzbd.Status); //remove any tool buttons, re-add them ClientToolStip.Items.Clear(); ActiveControl.AddToolbarItems(ClientToolStip.Items); UpdateToolStripButtons(ClientToolStip, Global.Config.ShowButtonText); } } } }
void AddCustomTabControl(ICustomTabControl TabCtrl) { TabCtrl.Button = new ToolStripButton() { Tag = TabCtrl, Image = TabCtrl.Icon, Text = TabCtrl.DisplayName, ToolTipText = TabCtrl.ToolTip, TextImageRelation = TextImageRelation.ImageAboveText, }; MainTabControl.Items.Add(TabCtrl.Button); }