HtmlTable.RenderChildren(HtmlTextWriter) 方法

定义

HtmlTable 控件的子控件呈现给指定的 HtmlTextWriter 对象。

protected:
 override void RenderChildren(System::Web::UI::HtmlTextWriter ^ writer);
protected public:
 override void RenderChildren(System::Web::UI::HtmlTextWriter ^ writer);
protected override void RenderChildren (System.Web.UI.HtmlTextWriter writer);
protected internal override void RenderChildren (System.Web.UI.HtmlTextWriter writer);
override this.RenderChildren : System.Web.UI.HtmlTextWriter -> unit
Protected Overrides Sub RenderChildren (writer As HtmlTextWriter)
Protected Friend Overrides Sub RenderChildren (writer As HtmlTextWriter)

参数

writer
HtmlTextWriter

接收呈现内容的 HtmlTextWriter

示例

下面的代码示例演示如何重写 RenderChildren 自定义服务器控件中的方法,以便将新表行追加到 HtmlTable 控件中。

<%@ 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 - RenderChildren Example</title>
    </head>
    <body>
        <form id="Form1" 
          method="post" 
          runat="server">
            <h3>Custom HtmlTable - RenderChildren Example</h3>
      
      <aspSample:CustomHtmlTableRenderChildren 
        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:CustomHtmlTableRenderChildren>

        </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 - RenderChildren Example</title>
    </head>
    <body>
        <form id="Form1" 
          method="post" 
          runat="server">
            <h3>Custom HtmlTable - RenderChildren Example</h3>
      
      <aspSample:CustomHtmlTableRenderChildren 
        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:CustomHtmlTableRenderChildren>

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

namespace Samples.AspNet.CS.Controls
{
    [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
    public sealed class CustomHtmlTableRenderChildren : System.Web.UI.HtmlControls.HtmlTable
    {
        protected override void RenderChildren(System.Web.UI.HtmlTextWriter writer)
        {
            // Call the base class's RenderChildren method.
            base.RenderChildren(writer);
            
            // Write out a new table row.
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr);
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
            writer.Write("4,1");
            writer.RenderEndTag();
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
            writer.Write("4,2");
            writer.RenderEndTag();
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td);
            writer.Write("4,3");
            writer.RenderEndTag();
            writer.RenderEndTag();
        }
    }
}
Imports System.Web
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public NotInheritable Class CustomHtmlTableRenderChildren
        Inherits System.Web.UI.HtmlControls.HtmlTable

        Protected Overrides Sub RenderChildren(ByVal writer As System.Web.UI.HtmlTextWriter)

            ' Call the base class's RenderChildren method.
            MyBase.RenderChildren(writer)

            ' Write out a new table row.
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Tr)
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td)
            writer.Write("4,1")
            writer.RenderEndTag()
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td)
            writer.Write("4,2")
            writer.RenderEndTag()
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Td)
            writer.Write("4,3")
            writer.RenderEndTag()
            writer.RenderEndTag()
        End Sub
    End Class
End Namespace

注解

该方法 RenderChildren 在调用基类 Control.RenderChildren 的方法之前和之后提供其他格式。 其他格式使控件的呈现 HTML HtmlTable 更易于阅读,方法是在呈现 HtmlTable 控件的子控件之前插入行返回和缩进。

该方法 RenderChildren 主要由扩展控件功能的 HtmlTable 控件开发人员使用。

适用于

另请参阅