Table.CreateControlCollection 方法

定义

创建新的 ControlCollection 对象以保存当前 TableRow 控件的 Table 控件。

protected:
 override System::Web::UI::ControlCollection ^ CreateControlCollection();
protected override System.Web.UI.ControlCollection CreateControlCollection ();
override this.CreateControlCollection : unit -> System.Web.UI.ControlCollection
Protected Overrides Function CreateControlCollection () As ControlCollection

返回

一个 ControlCollection 对象,用来包含当前 TableRow 控件的 Table 控件。

示例

下面的代码示例演示如何重写CreateControlCollection自定义服务器控件中的 方法,以便它始终返回 Table类的新实例EmptyControlCollection

<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.CS.Controls" %>
<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title>Custom Table - CreateControlCollection - C# Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <h3>Custom Table - CreateControlCollection - C# Example</h3>

    <aspSample:CustomTableCreateControlCollection runat="server"
      id="Table1" GridLines="Both" CellPadding="4">
      <asp:TableRow>
        <asp:TableCell>Row 0, Col 0</asp:TableCell>
        <asp:TableCell>Row 0, Col 1</asp:TableCell>
      </asp:TableRow>
      <asp:TableRow>
        <asp:TableCell>Row 1, Col 0</asp:TableCell>
        <asp:TableCell>Row 1, Col 1</asp:TableCell>
      </asp:TableRow>
    </aspSample:CustomTableCreateControlCollection>

    </div>
    </form>
</body>
</html>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.VB.Controls" %>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title>Custom Table - CreateControlCollection - VB Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <h3>Custom Table - CreateControlCollection - VB Example</h3>

    <aspSample:CustomTableCreateControlCollection runat="server"
      id="Table1" GridLines="Both" CellPadding="4">
      <asp:TableRow>
        <asp:TableCell>Row 0, Col 0</asp:TableCell>
        <asp:TableCell>Row 0, Col 1</asp:TableCell>
      </asp:TableRow>
      <asp:TableRow>
        <asp:TableCell>Row 1, Col 0</asp:TableCell>
        <asp:TableCell>Row 1, Col 1</asp:TableCell>
      </asp:TableRow>
    </aspSample:CustomTableCreateControlCollection>

    </div>
    </form>
</body>
</html>
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls
{
    [AspNetHostingPermission(SecurityAction.Demand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    public sealed class CustomTableCreateControlCollection : Table
    {
        protected override ControlCollection CreateControlCollection()
        {
            // Return a new ControlCollection
            return new ControlCollection(this);
        }
    }
}
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
    <AspNetHostingPermission(SecurityAction.Demand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class CustomTableCreateControlCollection
        Inherits Table

        Protected Overrides Function CreateControlCollection() As ControlCollection
            ' Return a new ControlCollection
            Return New ControlCollection(Me)
        End Function
    End Class
End Namespace

注解

从控件派生自定义类 Table 时,控件开发人员主要使用此方法。

此方法替代 CreateControlCollectionControl 类的实现。 Table对于控件,CreateControlCollection始终返回ControlCollection只能包含TableRow当前Table控件控件的 。

适用于

另请参阅