Export (0) Print
Expand All
Expand Minimize

Page.VerifyRenderingInServerForm Method

Confirms that an HtmlForm control is rendered for the specified ASP.NET server control at run time.

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

public virtual void VerifyRenderingInServerForm(
	Control control
)

Parameters

control
Type: System.Web.UI.Control

The ASP.NET server control that is required in the HtmlForm control.

ExceptionCondition
HttpException

The specified server control is not contained between the opening and closing tags of the HtmlForm server control at run time.

ArgumentNullException

The control to verify is null.

Controls that are required to be inside <form runat=server> tags can call this method before they render so that an error message is shown if they are placed outside the tags. Controls that post back or depend on registered script blocks should call this method in an override of the Control.Render method. Pages that have a different way of rendering the server form element can override this method to throw an exception under different conditions.

Server controls that post back or use client-side script will not work if they are not enclosed in the HtmlForm server control (<form runat="server">) tags. These controls can call this method when they render to provide a clear error message when they are not enclosed in the HtmlForm control.

When you develop a custom server control, it is common to call this method when you override the Render method for any kind of input tag. This is particularly important if the input control calls GetPostBackEventReference, or if it emits client script. A composite server control does not need to make this call.

The following code example overrides the Page.Render method of a custom server control. When this control writes its content to a page, it uses the VerifyRenderingInServerForm method to make sure that the control appears between the opening and closing tags of an HtmlForm control.

// Override the Render method to ensure that this control 
// is nested in an HtmlForm server control, between a <form runat=server> 
// opening tag and a </form> closing tag. 
protected override void Render(HtmlTextWriter writer) {
    // Ensure that the control is nested in a server form. 
    if (Page != null) {
        Page.VerifyRenderingInServerForm(this);
    }
    base.Render(writer);
}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft