Control.RenderControl 方法

定义

输出服务器控件内容,并存储有关此控件的跟踪信息(如果已启用跟踪)。

重载

RenderControl(HtmlTextWriter)

将服务器控件内容输出到所提供的 HtmlTextWriter 对象,如果启用了跟踪,则还将存储有关该控件的跟踪信息。

RenderControl(HtmlTextWriter, ControlAdapter)

使用提供的 HtmlTextWriter 对象将服务器控件内容输出到提供的 ControlAdapter 对象。

RenderControl(HtmlTextWriter)

将服务器控件内容输出到所提供的 HtmlTextWriter 对象,如果启用了跟踪,则还将存储有关该控件的跟踪信息。

public:
 void RenderControl(System::Web::UI::HtmlTextWriter ^ writer);
public:
 virtual void RenderControl(System::Web::UI::HtmlTextWriter ^ writer);
public void RenderControl (System.Web.UI.HtmlTextWriter writer);
public virtual void RenderControl (System.Web.UI.HtmlTextWriter writer);
member this.RenderControl : System.Web.UI.HtmlTextWriter -> unit
abstract member RenderControl : System.Web.UI.HtmlTextWriter -> unit
override this.RenderControl : System.Web.UI.HtmlTextWriter -> unit
Public Sub RenderControl (writer As HtmlTextWriter)
Public Overridable Sub RenderControl (writer As HtmlTextWriter)

参数

writer
HtmlTextWriter

接收控件内容的 HtmlTextWriter 对象。

示例

以下示例重写 RenderChildren 自定义服务器控件中的 方法。 它确定当前控件在其 ControlCollection 对象中是否具有任何子控件。 如果存在,则使用 Count 属性循环访问集合。 遇到每个子控件时,它使用 RenderControl 方法将子控件及其所有子控件呈现到包含页。 XhtmlTextWriter传递给此方法的对象由 Render 方法实例化。

// Override default implementation to Render children according to needs. 
protected override void RenderChildren(HtmlTextWriter output)
{
   if (HasControls())
   {
      // Render Children in reverse order.
      for(int i = Controls.Count - 1; i >= 0; --i)
      {
         Controls[i].RenderControl(output);
      }
   }         
}

protected override void Render(HtmlTextWriter output)
{       
   output.Write("<br>Message from Control : " + Message);       
   output.Write("Showing Custom controls created in reverse" +
                                                    "order");         
   // Render Controls.
   RenderChildren(output);
}
' Override default implementation to Render children according to needs. 
      Protected Overrides Sub RenderChildren(output As HtmlTextWriter)
         If HasControls() Then
            ' Render Children in reverse order.
            Dim i As Integer

            For i = Controls.Count - 1 To 0 Step -1
               Controls(i).RenderControl(output)
            Next

         End If
      End Sub
      
      
      Protected Overrides Sub Render(output As HtmlTextWriter)
         output.Write(("<br>Message from Control : " + Message))
         output.Write(("Showing Custom controls created in reverse" + "order"))
         ' Render Controls.
         RenderChildren(output)
      End Sub
   End Class

注解

如果服务器控件的 Visible 属性设置为 true,则此方法确定是否为页面启用跟踪。 如果是这样,它将存储与控件关联的跟踪信息,并将服务器控件内容呈现到页面。

此方法在呈现过程中由页面自动调用,但可由自定义控件开发人员重写。

另请参阅

适用于

RenderControl(HtmlTextWriter, ControlAdapter)

使用提供的 HtmlTextWriter 对象将服务器控件内容输出到提供的 ControlAdapter 对象。

protected:
 void RenderControl(System::Web::UI::HtmlTextWriter ^ writer, System::Web::UI::Adapters::ControlAdapter ^ adapter);
protected void RenderControl (System.Web.UI.HtmlTextWriter writer, System.Web.UI.Adapters.ControlAdapter adapter);
member this.RenderControl : System.Web.UI.HtmlTextWriter * System.Web.UI.Adapters.ControlAdapter -> unit
Protected Sub RenderControl (writer As HtmlTextWriter, adapter As ControlAdapter)

参数

writer
HtmlTextWriter

接收控件内容的 HtmlTextWriter

adapter
ControlAdapter

定义呈现的 ControlAdapter

注解

ASP.NET 网页可在各种设备和浏览器中使用,这些设备和浏览器可以从 Web 请求信息。 属性 Adapter 返回对象, ControlAdapter 该对象在请求设备或浏览器的屏幕上呈现控件。

有关适配器的详细信息,请参阅 自适应控件行为的体系结构概述

如果服务器控件的 Visible 属性设置为 true ,并且为页面启用了跟踪,则会捕获与该控件关联的跟踪信息。

继承者说明

在自定义控件中重写 RenderControl(HtmlTextWriter, ControlAdapter) 方法时,调用基类方法以确保正确捕获跟踪信息。

另请参阅

适用于