Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 394735
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 12, 20262026-05-12T16:23:06+00:00 2026-05-12T16:23:06+00:00

How can i remove the tabs from tabcontrol when i reference each tab to

  • 0

How can i remove the tabs from tabcontrol when i reference each tab to the childform.

I am using a tabcontrol, i want to remove a particular tab from the control. The value i have to do this in a string which i dynamically.

How to remove the tab from tabcontrol using a existing tab name which i have in a string ??

I tried something like…

 string tabToRemove = "tabPageName";
for (int i = 0; i < myTabControl.TabPages.Count; i++)
{
if (myTabControl.TabPages[i].Name.Equals(tabToRemove, StringComparison.OrdinalIgnoreCase))
{
    myTabControl.TabPages.RemoveAt(i);
    break;
}

}

But in the above code, the myTabControl.TabPages.Count is always zero.

Below is the code, to show i am creating the tabs. This is working perfectly.


         public void TabIt(string strProcessName)

        {
                    this.Show();

                    //Creating MDI child form and initialize its fields
                    MDIChild childForm = new MDIChild();
                    childForm.Text = strProcessName;
                    childForm.MdiParent = this;

                    //child Form will now hold a reference value to the tab control
                    childForm.TabCtrl = tabControl1;

                    //Add a Tabpage and enables it
                    TabPage tp = new TabPage();

                    tp.Parent = tabControl1;
                    tp.Text = childForm.Text;
                    tp.Show();
                    //child Form will now hold a reference value to a tabpage
                    childForm.TabPag = tp;
                    //Activate the MDI child form
                    childForm.Show();
                    childCount++;

                    //Activate the newly created Tabpage.
                    tabControl1.SelectedTab = tp;
                    tabControl1.ItemSize = new Size(200, 32);
                    tp.Height = tp.Parent.Height;
                    tp.Width = tp.Parent.Width;
        }


      public void GetTabNames()

      {

foreach (string strProcessName in Global.TabProcessNames)

                    {
                        TabIt(strProcessName);
                    }
        }

The child form :


using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Diagnostics;
using System.Drawing.Drawing2D;

namespace Daemon
{
    /// <summary>
    /// Summary description for MDIChild.
    /// </summary>
    /// 

    public class MDIChild : System.Windows.Forms.Form
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.Container components = null;
        private TabControl tabCtrl;
        private TabPage tabPag;

        public MDIChild()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();
            //MDIChild TargerForm = new MDIChild();
            //WinApi.SetWinFullScreen(TargerForm.Handle); 
            //
            // TODO: Add any constructor code after InitializeComponent call
            //
        }

        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if(components != null)
                {
                    components.Dispose();
                }
            }
            base.Dispose( disposing );
        }

        public TabPage TabPag
        {
            get
            {
                return tabPag;
            }
            set
            {
                tabPag = value;
            }
        }

        public TabControl TabCtrl
        {
            set
            {
                tabCtrl = value;
            }
        }


        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            this.SuspendLayout();
            // 
            // MDIChild
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
            this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
            this.BackColor = System.Drawing.SystemColors.InactiveCaptionText;
            this.ClientSize = new System.Drawing.Size(0, 0);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
            this.MaximizeBox = false;
            this.MinimizeBox = false;
            this.Name = "MDIChild";
            this.Opacity = 0;
            this.ShowIcon = false;
            this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
            this.Text = "MDIChild"; 
            this.Activated += new System.EventHandler(this.MDIChild_Activated);
            this.Closing += new System.ComponentModel.CancelEventHandler(this.MDIChild_Closing);
            this.ResumeLayout(false);

        }
        #endregion

        private void MDIChild_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        {
            try
            {
                //Destroy the corresponding Tabpage when closing MDI child form
                this.tabPag.Dispose();

                //If no Tabpage left
                if (!tabCtrl.HasChildren)
                {
                    tabCtrl.Visible = false;
                }
            }
            catch (Exception ex)
            { 
            }
        }

        private void MDIChild_Activated(object sender, System.EventArgs e)
        {
            try
            {
                //Activate the corresponding Tabpage
                tabCtrl.SelectedTab = tabPag;

                if (!tabCtrl.Visible)
                {
                    tabCtrl.Visible = true;
                }
                Global.ExistingTabProcessNames.Add(tabPag.Text);
            }
            catch (Exception ex)
            { 
            }
        }

    }
}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-12T16:23:06+00:00Added an answer on May 12, 2026 at 4:23 pm

    As jussij suggested, you need to do this:

    tabControl1.Controls.Add(tp);
    

    And you can more easily locate the tab like this:

    var foundTab = (from System.Windows.Forms.TabPage tab in tabControl1.TabPages.Cast<TabPage>()
                    where tab.Name == "tabName"
                    select tab).First();
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 255k
  • Answers 255k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Why does everything have to be a "design pattern"? It… May 13, 2026 at 10:26 am
  • Editorial Team
    Editorial Team added an answer Answering your first question, I think your solution is good.… May 13, 2026 at 10:26 am
  • Editorial Team
    Editorial Team added an answer you can create some viewController class to represent your waiting… May 13, 2026 at 10:26 am

Related Questions

Disclaimer: I am not he most Crytal-y person in the world, so bear with
When i select something from a selectbox it adds a class to the selected
I have an ASP.NET MVC application I'm building and I'm using a Master page.
Im developing a small web aplication, used in a shared computer. When the user

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.