Export (0) Print
Expand All

EmptyControlCollection Class

Provides standard support for a ControlCollection that is always empty.

For a list of all members of this type, see EmptyControlCollection Members.

System.Object
   System.Web.UI.ControlCollection
      System.Web.UI.EmptyControlCollection

[Visual Basic]
Public Class EmptyControlCollection
   Inherits ControlCollection
[C#]
public class EmptyControlCollection : ControlCollection
[C++]
public __gc class EmptyControlCollection : public ControlCollection
[JScript]
public class EmptyControlCollection extends ControlCollection

Thread Safety

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

Remarks

This class is used when you want to define a custom control that does not allow child controls.

Example

[Visual Basic] 

' File name: emptyControlCollection.vb.

Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Collections


Namespace CustomControls 

  Public Class MyVB_EmptyControl 
    Inherits Control
    
    <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
    Protected Overrides Function CreateControlCollection() As ControlCollection
    ' Function Name: CreateControlCollection.
    ' Denies the creation of any child control by creating an empty collection.
    ' Generates an exception if an attempt to create a child control is made.
      Return New EmptyControlCollection(Me)
    End Function 
    
    <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _  
    Protected Overrides Sub CreateChildControls()
    ' Sub Name: CreateChildControls.
    ' Populates the child control collection (Controls). 
    ' Note: This function will cause an exception because the control does not allow 
    ' child controls.
      Dim text As LiteralControl
      text = New LiteralControl("<h5>Composite Controls</h5>")
      Controls.Add(text)
    End Sub 
  End Class 

End Namespace 


[C#] 

/* File name: emptyControlCollection.cs. */

using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections;

namespace CustomControls
{

  // Defines a simple custom control.
  public class MyCS_EmptyControl : Control
  {
    [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
    protected override ControlCollection CreateControlCollection() 
    /*
     * Function Name: CreateControlCollection.
     * Denies the creation of any child control by creating an empty collection.
     * Generates an exception if an attempt to create a child control is made.
     */
     {
       return new EmptyControlCollection(this);
     }
     
     [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
     protected override void CreateChildControls()
     /*
      * Function Name: CreateChildControls.
      * Populates the child control collection (Controls). 
      * Note: This function will cause an exception because the control does not allow 
      * child controls.
      */
      {
        // Create a literal control to contain the header and add it to the collection.
        LiteralControl text;
        text = new LiteralControl("<h5>Composite Controls</h5>");
        Controls.Add(text);
      }
   }

}

[C++] 
/* File name: emptyControlCollection.cpp. */
#using <mscorlib.dll>
#using <System.Web.dll>
#using <System.dll>
using namespace System;
using namespace System::Web;
using namespace System::Web::UI;
using namespace System::Web::UI::WebControls;
using namespace System::Collections;

// Defines a simple custom control.
public __gc class MyCS_EmptyControl : public Control 
{
protected:
   [System::Security::Permissions::PermissionSet(System::Security::Permissions::SecurityAction::Demand, Name="FullTrust")] 
   ControlCollection * CreateControlCollection()
   {
      /*
      * Function Name: CreateControlCollection.
      * Denies the creation of any child control by creating an empty collection.
      * Generates an exception if an attempt to create a child control is made.
      */
      return new EmptyControlCollection(this);
   }

   [System::Security::Permissions::PermissionSet(System::Security::Permissions::SecurityAction::Demand, Name="FullTrust")] 
   void CreateChildControls()
   {
      /*
      * Function Name: CreateChildControls.
      * Populates the child control collection (Controls).
      * Note: This function will cause an exception because the control does not allow
      * child controls.
      */
      // Create a literal control to contain the header and add it to the collection.
      LiteralControl* text;
      text = new LiteralControl(S"<h5>Composite Controls</h5>");
      Controls->Add(text);
   }
};

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Namespace: System.Web.UI

Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family

Assembly: System.Web (in System.Web.dll)

See Also

EmptyControlCollection Members | System.Web.UI Namespace

Show:
© 2014 Microsoft