ControlRenderChildren Method

Outputs the content of a server control's children to a provided HtmlTextWriter object, which writes the content to be rendered on the client.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

protected internal virtual void RenderChildren(
	HtmlTextWriter writer
public protected:
virtual void RenderChildren(
	HtmlTextWriter^ writer
abstract RenderChildren : 
        writer:HtmlTextWriter -> unit
override RenderChildren : 
        writer:HtmlTextWriter -> unit
Protected Friend Overridable Sub RenderChildren (
	writer As HtmlTextWriter



The HtmlTextWriter object that receives the rendered content.


This method notifies ASP.NET to render any Active Server Pages (ASP) code on the page. If no ASP code exists on the page, this method renders any child controls for the server control. This method is called by the Render method.


The following example overrides the RenderChildren method in a custom server control. It determines whether the current control has any child controls in its ControlCollection object. If it does, it uses the property to iterate through the collection. As it encounters each child control, it uses the RenderControl method to render the parent control, and all of its child controls, to the containing page.

The overridden Render method then calls the overridden RenderChildren method.

// 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)

protected override void Render(HtmlTextWriter output)
   output.Write("<br>Message from Control : " + Message);       
   output.Write("Showing Custom controls created in reverse" +
   // Render Controls.
' 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

         End If
      End Sub 'RenderChildren

      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.
      End Sub
   End Class
Version Information
.NET Framework
Available since 1.1
Return to top