示例#1
0
        public void AddTab(VisualTabPage p, bool switchto)
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new VisualTabPage_AddTab(AddTab), new object[2] {
                    p, switchto
                });
                return;
            }
            if (p.Master != null && p.Master != this)
            {
                throw new Exception("Please give a tab only 1 master control!");
            }
            p.Master = this;
            p.Hide();
            this.Tabs.Add(p);
            this.Controls.Add(p);

            if (this.Tabs.Contains(NoTabsAdded) && NoTabsAdded != p)
            {
                this.Tabs.Remove(NoTabsAdded);
                this.Controls.Remove(NoTabsAdded);
                switchto = true;
            }
            if (switchto)
            {
                _SelectedTab = Tabs.Count - 1;
            }
            Repaint();

            if (p != NoTabsAdded)
            {
                ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(OnTabAdded), p);
            }
        }
示例#2
0
        public void CloseTab(VisualTabPage page)
        {
            if (this._Tabs.Contains(page))
            {
                page.Hide();
                this.Controls.Remove(page);
                this._Tabs.Remove(page);

                _SelectedTab = 0;

                RefreshTab();
                if (page != NoTabsAdded)
                {
                    ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(OnTabRemoved), page);
                }
            }
        }
示例#3
0
        public void CloseTab(VisualTabPage page)
        {
            if (this._Tabs.Contains(page))
            {
                page.Hide();
                this.Controls.Remove(page);
                this._Tabs.Remove(page);

                _SelectedTab = 0;

                RefreshTab();
                if (page != NoTabsAdded)
                {
                    ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(OnTabRemoved), page);
                }
            }
        }
示例#4
0
        public void AddTab(VisualTabPage p, bool switchto)
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new VisualTabPage_AddTab(AddTab), new object[2] { p, switchto });
                return;
            }
            if (p.Master != null && p.Master != this)
                throw new Exception("Please give a tab only 1 master control!");
            p.Master = this;
            p.Hide();
            this.Tabs.Add(p);
            this.Controls.Add(p);

            if (this.Tabs.Contains(NoTabsAdded) && NoTabsAdded != p)
            {
                this.Tabs.Remove(NoTabsAdded);
                this.Controls.Remove(NoTabsAdded);
                switchto = true;
            }
            if (switchto)
                _SelectedTab = Tabs.Count - 1;
            Repaint();

            if (p != NoTabsAdded)
            {
                ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(OnTabAdded), p);
            }
        }