Disable or Enable Controls in a Parent Control, Except for one

You will encounter a situation where you would like to disable all the controls inside a container control except for one. Now, as simple as this sounds, it can be a lot of repetitive coding where you set the controls enabled or disabled one by one.

One way to circumvent this tedious process is by using the following code:

  private void DisableControls(Control con)        {            foreach (Control c in con.Controls)            {                DisableControls(c);            }            con.Enabled = false;        }        private void EnableControls(Control con)        {            if (con != null)            {                con.Enabled = true;                EnableControls(con.Parent);            }        } 

And call it this way:

DisableControls(this);  EnableControls(CONTROL_TO_ENABLE); 
Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Related Posts