NamingContainer Component Samples

Basic NamingContainer

Child controls get IDs prefixed with the container's ID separated by underscores.

Search:

Child IDs: SearchPanel_lblQuery, SearchPanel_txtQuery, SearchPanel_btnSearch

Nested NamingContainers

Multiple containers can be nested. Each level adds its ID as a prefix.

Filter: Title:

Child IDs: MainLayout_Sidebar_lblFilter, MainLayout_Sidebar_txtFilter, MainLayout_Content_lblTitle, MainLayout_Content_txtTitle, MainLayout_Content_btnSave

NamingContainer with UseCtl00Prefix

For full Web Forms compatibility, enable UseCtl00Prefix to prepend "ctl00" to the naming hierarchy.

Email:

Child IDs: ctl00_MainContent_lblEmail, ctl00_MainContent_txtEmail, ctl00_MainContent_btnRegister

NamingContainer with Visibility Control

NamingContainer supports Visible property to conditionally render child content.

When checked, child IDs appear: OptionalSection_lblAdvanced, OptionalSection_txtAdvanced

NamingContainer with Multiple Sections

Use multiple NamingContainers to organize different form sections.

Personal Information Name:
Age:
Contact Information Phone:
Email:

Section 1 IDs: PersonalInfo_lblName, PersonalInfo_txtName, PersonalInfo_lblAge, PersonalInfo_txtAge

Section 2 IDs: ContactInfo_lblPhone, ContactInfo_txtPhone, ContactInfo_lblEmail, ContactInfo_txtEmail


Code Examples:

<!-- Basic NamingContainer -->
<NamingContainer ID="SearchPanel">
  <Label ID="lblQuery" Text="Search:" />
  <TextBox ID="txtQuery" />
  <Button ID="btnSearch" Text="Search" />
</NamingContainer>

<!-- With UseCtl00Prefix for Web Forms compatibility -->
<NamingContainer ID="MainContent" UseCtl00Prefix="true">
  <TextBox ID="txtEmail" />
  <Button ID="btnSubmit" Text="Submit" />
</NamingContainer>

<!-- With Visibility Control -->
<NamingContainer ID="OptionalSection" Visible="showOptional">
  <TextBox ID="txtAdvanced" />
</NamingContainer>