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 -> 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) 方法时,调用基类方法以确保正确捕获跟踪信息。