This documentation is archived and is not being maintained.

CompositeControl Class

Implements the basic functionality required by Web controls that contain child controls.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public abstract class CompositeControl : WebControl, 
	INamingContainer, ICompositeControlDesignerAccessor
<asp:CompositeControl />

The CompositeControl class is an abstract class that provides naming container and control designer functionality for custom controls that encompass child controls in their entirety or use the functionality of other controls. This class is inherited by controls such as Login, and Wizard. You cannot use this class directly.

The CompositeControl class implements the INamingContainer interface. This is required to ensure that all child control ID attributes are unique, and can be located on post back for data binding.

To create a custom composite control, derive from the CompositeControl class. The functionality this class provides is built-in verification that child controls have been created prior to being accessed and it enables the design-time environment to recreate the collection of child controls. The Controls property ensures that all child controls have been created prior to accessing the ControlCollection. The DataBind method verifies that all child controls have been created prior to binding them to a data source.

Control developers can use the CompositeControlDesigner class to create a custom designer for a composite control derived from CompositeControl. A control designer is a class that defines how a control is displayed and manipulated in design view. For more information, see CompositeControlDesigner.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0