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) 自定义控件中重写方法时,调用基类方法以确保正确捕获跟踪信息。

另请参阅

适用于