How to get all controls from a form at runtime in C#

March 26, 2013 by Anuraj

.Net .Net 3.0 / 3.5 Miscellaneous Windows Forms

Here is a code snippet which helps you to enumerate all the controls in a form. This snippet can be used for any control, to find the child controls.

public static class Extensions
{
    public static void EnumerateChildren(this Control root)
    {
        foreach (Control control in root.Controls)
        {
            Console.WriteLine("Control [{0}] - Parent [{1}]",
                control.Name, root.Name);
            if (control.Controls != null)
            {
                EnumerateChildren(control);
            }
        }
    }
}

And you can invoke this function like this, to enumerate all the controls of a Form.

this.EnumerateChildren();

Copyright © 2024 Anuraj. Blog content licensed under the Creative Commons CC BY 2.5 | Unless otherwise stated or granted, code samples licensed under the MIT license. This is a personal blog. The opinions expressed here represent my own and not those of my employer. Powered by Jekyll. Hosted with ❤ by GitHub