Page.VerifyRenderingInServerForm(Control) Method

Definition

Conferma che in fase di esecuzione viene eseguito il rendering di un controllo HtmlForm per il controllo server ASP.NET specificato.Confirms that an HtmlForm control is rendered for the specified ASP.NET server control at run time.

public:
 virtual void VerifyRenderingInServerForm(System::Web::UI::Control ^ control);
public virtual void VerifyRenderingInServerForm (System.Web.UI.Control control);
abstract member VerifyRenderingInServerForm : System.Web.UI.Control -> unit
override this.VerifyRenderingInServerForm : System.Web.UI.Control -> unit
Public Overridable Sub VerifyRenderingInServerForm (control As Control)

Parameters

control
Control

Controllo server ASP.NET richiesto nel controllo HtmlForm.The ASP.NET server control that is required in the HtmlForm control.

Exceptions

In fase di esecuzione, il controllo server specificato non è racchiuso tra i tag di apertura e di chiusura del controllo server HtmlForm.The specified server control is not contained between the opening and closing tags of the HtmlForm server control at run time.

Il controllo da verificare è null.The control to verify is null.

Examples

Nell'esempio di codice seguente viene eseguito l'override del metodo Page.Render di un controllo server personalizzato.The following code example overrides the Page.Render method of a custom server control. Quando questo controllo scrive il contenuto in una pagina, usa il metodo VerifyRenderingInServerForm per assicurarsi che il controllo venga visualizzato tra i tag di apertura e di chiusura di un controllo HtmlForm.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);
}
' 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 Overrides Sub Render(ByVal writer As HtmlTextWriter)

    ' Ensure that the control is nested in a server form.
    If Not (Page Is Nothing) Then
        Page.VerifyRenderingInServerForm(Me)
    End If

    MyBase.Render(writer)

End Sub

Remarks

I controlli che devono trovarsi all'interno di <form runat=server> tag possono chiamare questo metodo prima di eseguire il rendering, in modo che venga visualizzato un messaggio di errore se vengono posizionati all'esterno dei tag.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. I controlli che eseguono il postback o dipendono da blocchi di script registrati devono chiamare questo metodo in un override del metodo Control.Render.Controls that post back or depend on registered script blocks should call this method in an override of the Control.Render method. Le pagine che hanno un modo diverso per eseguire il rendering dell'elemento del form del server possono eseguire l'override di questo metodo per generare un'eccezione in condizioni diverse.Pages that have a different way of rendering the server form element can override this method to throw an exception under different conditions.

I controlli server che eseguono il postback o utilizzano script sul lato client non funzioneranno se non sono racchiusi tra i tag di controllo del server HtmlForm (<form runat="server">).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. Questi controlli possono chiamare questo metodo quando eseguono il rendering per fornire un messaggio di errore chiaro se non sono racchiusi nel controllo HtmlForm.These controls can call this method when they render to provide a clear error message when they are not enclosed in the HtmlForm control.

Quando si sviluppa un controllo server personalizzato, è normale chiamare questo metodo quando si esegue l'override del metodo Render per qualsiasi tipo di tag di input.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. Questo è particolarmente importante se il controllo di input chiama GetPostBackEventReferenceo se genera uno script client.This is particularly important if the input control calls GetPostBackEventReference, or if it emits client script. Non è necessario che un controllo server composito effettui questa chiamata.A composite server control does not need to make this call.

Applies to