Click here to Skip to main content
Click here to Skip to main content

Finding Specific Type Parent Control in ASP.NET

By , 1 Feb 2010
Rate this:
Please Sign up or sign in to vote.
Introduction
 
While working on a page with nested DataLists, I found it difficult to find the parent DataListItems of controls nested in panels and other server side container controls. I had to repeat calling the Parent property of controls till I get the required Parent control. The repeation of calling of Parent property is error prone as any subtle change in the page structure could throw an exception. This helper method finds the parent control using extension method to the Control class of asp.net.
 
The Code
 
public static T FindImmediateParentOfType<T>(this Control control) where T : Control
    {
        T retVal = default(T);
        Control parentCtl = control.Parent;
        while (parentCtl != null)
        {
            if (parentCtl is T)
            {
                retVal = (T)parentCtl;
                break;
            }
            else
            {
                parentCtl = parentCtl.Parent;
            }
        }
        return retVal;
 
    }

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Haris Munawar
Software Developer
Pakistan Pakistan
A .NET program writer from Rawalpindi, Pakistan.
Follow on   Twitter

Comments and Discussions

 
-- There are no messages in this forum --
| Advertise | Privacy | Mobile
Web03 | 2.8.140415.2 | Last Updated 1 Feb 2010
Article Copyright 2010 by Haris Munawar
Everything else Copyright © CodeProject, 1999-2014
Terms of Use
Layout: fixed | fluid