protected override void OnCreateControl() { base.OnCreateControl(); base.TabPages.Clear(); int ininCount = base.TabCount; for (int i = 0; i < ininCount; i++) { base.TabPages.RemoveAt(0); } TabPageCollection tc = new TabPageCollection(this); TabPageEX te = new TabPageEX(); te.Text = "TabPageEX"; tc.Add(te); te = new TabPageEX(); te.Text = "New"; tc.Add(te); base.SelectedIndex = 0; ToolStripMenuItem closeItem = addMenuItem("关闭"); ToolStripMenuItem closeRightItems = addMenuItem("关闭右侧标签"); ToolStripMenuItem closeOtherItems = addMenuItem("关闭其他标签"); rMenu.Items.Add(closeItem); closeItem.Click += new EventHandler(closeItem_Click); rMenu.Items.Add(closeRightItems); rMenu.Items.Add(closeOtherItems); closeRightItems.Click += new EventHandler(closeRightItems_Click); closeOtherItems.Click += new EventHandler(closeOtherItems_Click); }
void closeItem_Click(object sender, EventArgs e) { // throw new NotImplementedException(); TabPageEX tpe = (TabPageEX)base.SelectedTab; int i = base.SelectedIndex; base.TabPages.Remove(tpe); base.SelectedIndex = i - 1; }
void closeOtherItems_Click(object sender, EventArgs e) { //throw new NotImplementedException(); //TabPageEX tpe = (TabPageEX)base.SelectedTab; TabPageEX tpe = (TabPageEX)base.TabPages[getMouseTabpage(mouseLocation)]; base.TabPages.Clear(); base.TabPages.Add(tpe); TabPageEX te = new TabPageEX(); te.Text = "New"; base.TabPages.Add(te); }
protected override void OnSelectedIndexChanged(EventArgs e) { base.OnSelectedIndexChanged(e); if (this.IsHandleCreated && canNew) { if (base.SelectedIndex < 0) { return; } if (this.SelectedIndex == this.TabPages.Count - 1) { this.SelectedTab.Text = "newTabEX" + count++.ToString(); //TabPage newTab = new TabPage(); TabPageEX newTab = new TabPageEX(); newTab.Text = "New"; this.TabPages.Add(newTab); } } }