public void HideTab(string key) { if (TabPages.ContainsKey(key)) { HideTab(TabPages[key]); } }
public void HideTabPageByName(string tabPageName) { // The first time the Hide method is called, save the original order of the TabPages if (tabPagesOrder == null) { tabPagesOrder = new List <string>(); foreach (System.Windows.Forms.TabPage tabPageCurrent in TabPages) { tabPagesOrder.Add(tabPageCurrent.Name); } } if (TabPages.ContainsKey(tabPageName)) { System.Windows.Forms.TabPage tabPageToHide; // Get the TabPage object tabPageToHide = TabPages[tabPageName]; // Add the TabPage to the internal List tabPagesHidden.Add(tabPageName, tabPageToHide); // Remove the TabPage from the TabPages collection of the TabControl TabPages.Remove(tabPageToHide); } }
public void AddTab(string filename = "") { if (TabPages.ContainsKey(filename)) { return; } var tabPage = new TabPage(); if (string.IsNullOrEmpty(filename)) { tabPage.Text = Strings.DocumentsTabControl_AddTab_NewFile + id; tabPage.ImageIndex = 1; tabPage.Name = Strings.DocumentsTabControl_AddTab_NewFile + id; } else { tabPage.Text = filename; tabPage.ImageIndex = 0; tabPage.Name = filename; } TabPages.Insert(TabPages.Count - 1, tabPage); SelectedIndex = TabPages.IndexOf(tabPage); id++; }
// WORKAROUND: Selected is never raised if the first tab is selected. (which is annoying if you want to initialize it) public void SelectTab(string tabPageName, bool forceSelection) { if (!forceSelection) { base.SelectTab(tabPageName); } else { if (!TabPages.ContainsKey(tabPageName)) { return; } TabPage targetTab = First(x => x.Name.Equals(tabPageName)); if (TabPages.IndexOfKey(tabPageName) == 0) { OnSelected(new TabControlEventArgs(targetTab, 0, TabControlAction.Selected)); } else { base.SelectTab(tabPageName); } } }
public virtual void FocusPage(Panel p) { if (TabPages.ContainsKey(p)) { p.BringToFront(); } }
private void xtraTabControl1_CloseButtonClick(object sender, EventArgs e) { if (TabPages.ContainsKey(((XtraTabControl)sender).SelectedTabPage.Name)) { TabPages.Remove(((XtraTabControl)sender).SelectedTabPage.Name); } xtraTabControl1.TabPages.Remove(((XtraTabControl)sender).SelectedTabPage); }
private void CloseTab_BarButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (TabPages.ContainsKey(xtraTabControl1.SelectedTabPage.Name)) { TabPages.Remove(xtraTabControl1.SelectedTabPage.Name); } xtraTabControl1.TabPages.Remove(xtraTabControl1.SelectedTabPage); }
private void CloseAllTabs_BarButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { foreach (XtraTabPage tabPage in xtraTabControl1.TabPages) { if (TabPages.ContainsKey(tabPage.Name)) { TabPages.Remove(tabPage.Name); } } xtraTabControl1.TabPages.Clear(); }
protected override void OnControlAdded(Miyagi.Common.Events.ValueEventArgs <Control> e) { if (e.Data is Panel && TabPages.ContainsKey((Panel)e.Data)) { base.OnControlAdded(e); AddButtonForTabPage((Panel)e.Data); this.PerformLayout(); } else if (e.Data is Button && TabButtons.ContainsValue((Button)e.Data)) { base.OnControlAdded(e); } else { throw new InvalidOperationException("Only panels may be added to tab panels!"); } }
/// <summary> /// Creates tabs from a list of property sets. /// </summary> /// <param name="propertySets">Property sets to base tabs off of.</param> public void ApplyGamepieces(Exporter.Gamepiece[] gamepieces) { var tmp = Handle; // Forces creation of window handle so that tabs will appear foreach (Exporter.Gamepiece g in gamepieces) { if (TabPages.ContainsKey(g.id)) { TabPage p = TabPages[g.id]; if (p is ComponentPropertiesTabPage page) { page.ChildForm.Gamepiece = g; } } } SelectedTab = TabPages[0]; }
/// <summary> /// 将需要显示的Tip文字添加到容器以显示 /// </summary> /// <param name="tabPageName"></param> /// <param name="text"></param> public void TipTextAdd(string tabPageName, string text) { if (SelectedTab != null) { if (SelectedTab.Name == tabPageName) //不对当前标签添加Tip文字 { return; } } if (TabPages.ContainsKey(tabPageName)) { if (!TipTextDictionary.ContainsKey(tabPageName)) { TipTextDictionary.Add(tabPageName, text); } else { TipTextDictionary[tabPageName] = text; } } }
/// <summary> /// 将tabpage加入呼吸灯显示容器,使标签具有呼吸灯效果 /// </summary> /// <param name="tabPageName"></param> public void tabFlickerAdd(string tabPageName) { if (SelectedTab != null) { if (SelectedTab.Name == tabPageName) //不对当前标签添加呼吸灯效果 { return; } } if (TabPages.ContainsKey(tabPageName)) { if (!tabFlickerDictionary.ContainsKey(tabPageName)) { tabFlickerDictionary.Add(tabPageName, false); if (!flashTime.Enabled) { flashTime.Enabled = true; } } } }
private void CloseOtherTabs_BarButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { XtraTabPage leavePage = null; foreach (XtraTabPage tabPage in xtraTabControl1.TabPages) { if (TabPages.ContainsKey(tabPage.Name) && xtraTabControl1.SelectedTabPage != tabPage) { TabPages.Remove(tabPage.Name); } else { leavePage = tabPage; } } xtraTabControl1.TabPages.Clear(); if (leavePage != null) { xtraTabControl1.TabPages.Add(leavePage); } }
/// <summary> /// Adds a ComponentPropertiesTab if the EnterNameDialog returns OK and the name isn't already taken. /// </summary> /// <returns>true if OK is pressed</returns> public bool AddComponentPropertiesTab() { EnterNameDialog nameDialog = new EnterNameDialog(); if (nameDialog.ShowDialog(this).Equals(DialogResult.OK)) { if (TabPages.ContainsKey(nameDialog.nameTextBox.Text)) { MessageBox.Show("Name is already taken.", "Invalid name."); return(false); } else { ComponentPropertiesTabPage page = new ComponentPropertiesTabPage(this, nameDialog.nameTextBox.Text); TabPages.Insert(TabPages.Count - 1, page); SelectedTab = page; return(true); } } else { return(false); } }
public async Task AddViewTab(string Name, string EntryPoint, bool ShowView = true) { var view = ViewSet.ViewsList[Name]; _lastEntryPoint = EntryPoint; if ((await view.IsEnabledAsync()) == false) { return; } // Tab is already opened if (TabPages.ContainsKey(Name)) { if (SelectedTab.Name == view.Name) { await CallShowView(SelectedTab); return; } // Select the tab _targetingPage = TabPages[view.Name]; SelectTab(view.Name); return; } UserControl uc = view.ViewControl; if (uc == null) { await view.ViewlessCallAsync(view.EntryPoint); return; } // Wrapper for the view control Panel viewPanel = new Panel(); // Set the size and the color viewPanel.BackColor = uc.BackColor; viewPanel.AutoScrollMinSize = uc.Size; viewPanel.AutoScroll = true; // Add the new control viewPanel.Controls.Add(uc); // Fill the whole area viewPanel.Dock = DockStyle.Fill; uc.Dock = DockStyle.Fill; // Adding a new tab TabPages.Add(view.Name, view.Title); // Displaying the new tab TabPages[view.Name].Show(); TabPages[view.Name].BackColor = viewPanel.BackColor; if (view.Icon != null) { TabPages[view.Name].ImageKey = view.Name; } else { TabPages[view.Name].ImageKey = "noIcon"; } TabPages[view.Name].Controls.Add(viewPanel); if (ShowView) { if (TabPages.Count > 1) { _targetingPage = TabPages[view.Name]; SelectTab(view.Name); } else { if (await ShowViewAsync(TabPages[view.Name]) == false) { TabPages.Remove(TabPages[view.Name]); } } } }