Control.RenderControl 方法  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
输出服务器控件内容,并存储有关此控件的跟踪信息(如果已启用跟踪)。
重载
| 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 -> unitabstract member RenderControl : System.Web.UI.HtmlTextWriter -> unit
override this.RenderControl : System.Web.UI.HtmlTextWriter -> unitPublic 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 -> unitProtected Sub RenderControl (writer As HtmlTextWriter, adapter As ControlAdapter)参数
- writer
- HtmlTextWriter
接收控件内容的 HtmlTextWriter。
- adapter
- ControlAdapter
定义呈现的 ControlAdapter。
注解
ASP.NET 网页可在各种设备和浏览器中使用,这些设备和浏览器可以从 Web 请求信息。 属性 Adapter 返回对象, ControlAdapter 该对象在请求设备或浏览器的屏幕上呈现控件。
有关适配器的详细信息,请参阅 自适应控件行为的体系结构概述。
如果服务器控件的 Visible 属性设置为 true ,并且为页面启用了跟踪,则会捕获与该控件关联的跟踪信息。
继承者说明
在自定义控件中重写 RenderControl(HtmlTextWriter, ControlAdapter) 方法时,调用基类方法以确保正确捕获跟踪信息。