HtmlTable.HtmlTableRowControlCollection.Add(Control) Method       
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Adds the specified Control object to the collection.
public:
 override void Add(System::Web::UI::Control ^ child);
	public override void Add(System.Web.UI.Control child);
	override this.Add : System.Web.UI.Control -> unit
	Public Overrides Sub Add (child As Control)
	Parameters
Exceptions
The added control must be of type HtmlTableRow.
Examples
The following code example demonstrates how to create a custom HtmlTable.HtmlTableRowControlCollection collection that overrides the Add method so that when rows are added to a table, they are always added at the beginning of the table's row collection. Notice how the custom Add method calls the base class's AddAt method with the index parameter equal to 0.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!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>
    <title>Custom HtmlTable - CustomHtmlTableRowControlCollection Example</title>
  </head>
  <body>
    <form id="Form1" 
          method="post" 
          runat="server">
      <h3>Custom HtmlTable - CustomHtmlTableRowControlCollection Example</h3>
      
      <aspSample:CustomHtmlTableRowControlCollection 
        id="HtmlTable1" 
        name="HtmlTable1" 
        runat="server" 
        border="1"
        cellSpacing="0" 
        cellPadding="5">
        <tr>
          <td>1,1</td>
          <td>1,2</td>
          <td>1,3</td>
        </tr>
        <tr>
          <td>2,1</td>
          <td>2,2</td>
          <td>2,3</td>
        </tr>
        <tr>
          <td>3,1</td>
          <td>3,2</td>
          <td>3,3</td>
        </tr>
      </aspSample:CustomHtmlTableRowControlCollection>
    </form>
  </body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!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>
    <title>Custom HtmlTable - CustomHtmlTableRowControlCollection Example</title>
  </head>
  <body>
    <form id="Form1" 
          method="post" 
          runat="server">
      <h3>Custom HtmlTable - CustomHtmlTableRowControlCollection Example</h3>
      
      <aspSample:CustomHtmlTableRowControlCollection 
        id="HtmlTable1" 
        name="HtmlTable1" 
        runat="server" 
        border="1"
        cellSpacing="0" 
        cellPadding="5">
        <tr>
          <td>1,1</td>
          <td>1,2</td>
          <td>1,3</td>
        </tr>
        <tr>
          <td>2,1</td>
          <td>2,2</td>
          <td>2,3</td>
        </tr>
        <tr>
          <td>3,1</td>
          <td>3,2</td>
          <td>3,3</td>
        </tr>
      </aspSample:CustomHtmlTableRowControlCollection>
    </form>
  </body>
</html>
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
    [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
    public class CustomHtmlTableRowControlCollection : System.Web.UI.HtmlControls.HtmlTable
    {
       protected override ControlCollection CreateControlCollection()
       {
         return new MyHtmlTableRowControlCollection(this);
       }
       protected class MyHtmlTableRowControlCollection : ControlCollection
       {
         internal MyHtmlTableRowControlCollection(Control owner) : base(owner) { }
         public override void Add(Control child)
         {
           // Always add new rows at the top of the table.
           base.AddAt(0, child);
         }
       }
    }
}
Imports System.Web
Imports System.Web.UI
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public NotInheritable Class CustomHtmlTableRowControlCollection
        Inherits System.Web.UI.HtmlControls.HtmlTable
        Protected Overrides Function CreateControlCollection() As System.Web.UI.ControlCollection
            Return New MyHtmlTableRowControlCollection(Me)
        End Function
        Protected Class MyHtmlTableRowControlCollection
            Inherits ControlCollection
            Friend Sub New(ByVal owner As Control)
                MyBase.New(owner)
            End Sub
            Public Overrides Sub Add(ByVal child As Control)
                ' Always add new rows at the top of the table.
                MyBase.AddAt(0, child)
            End Sub
        End Class
    End Class
End Namespace
	Remarks
The added control can only be an HtmlTableRow control; otherwise, an ArgumentException exception is thrown.