Freigeben über


EmptyControlCollection(Control) Konstruktor

Definition

Initialisiert eine neue Instanz der EmptyControlCollection-Klasse.

public:
 EmptyControlCollection(System::Web::UI::Control ^ owner);
public EmptyControlCollection (System.Web.UI.Control owner);
new System.Web.UI.EmptyControlCollection : System.Web.UI.Control -> System.Web.UI.EmptyControlCollection
Public Sub New (owner As Control)

Parameter

owner
Control

Das Control, das diese Auflistung als Auflistung von untergeordneten Steuerelementen besitzt.

Beispiele

Im folgenden Codebeispiel wird versucht, ein Steuerelement mit untergeordneten Steuerelementen aufzufüllen, was zu einer Ausnahme führt. Dies liegt daran, dass das Containersteuerelement keine untergeordneten Steuerelemente zulässt. Im Folgenden wird die Befehlszeile zum Erstellen der ausführbaren Datei verwendet.

vbc /r:System.dll /r:System.Web.dll /t:library  
       /out:myWebAppPath/bin/vb_myEmptyControlCollection.dll  
       myEmptyControlCollection.vb  
csc /t:library /out:myWebAppPath/bin/cs_myEmptyControlCollection.dll  
    myEmptyControlCollection.cs  

/* 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);
      }
   }
}

' File name: emptyControlCollection.vb.

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

Im folgenden Codebeispiel wird das leere benutzerdefinierte Steuerelement verwendet, das oben definiert ist. Wenn Sie dieses Beispiel ausführen, erhalten Sie eine Ausnahme. Beachten Sie, dass die in der Direktive angezeigten Register Werte die vorherige Befehlszeile widerspiegeln.

<%@ Register TagPrefix="custom" Assembly="vb_myEmptyControlCollection" Namespace="CustomControls" %>  
 <html>  
  <body>  
  <h1>Using an Empty Control</h1>  
  <custom:MyVB_EmptyControl id="vbEmptyControlId" runat="server"/>  
  </body>  
 </html>  
<%@ Register TagPrefix="custom" Assembly="cs_myEmptyControlCollection" Namespace="CustomControls" %>  
 <html>  
  <body>  
  <h1>Using an Empty Control </h1>  
  <custom:MyCS_EmptyControl id="csEmptyControlId" runat="server"/>  
  </body>  
 </html>  

Gilt für: