Page.VerifyRenderingInServerForm(Control) Methode

Definition

Bestätigt, dass ein HtmlForm Steuerelement zur Laufzeit für das angegebene ASP.NET Serversteuerelement gerendert wird.

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)

Parameter

control
Control

Das ASP.NET Serversteuerelement, das im steuerelement HtmlForm erforderlich ist.

Ausnahmen

Das angegebene Serversteuerelement ist nicht zwischen den öffnenden und schließenden Tags des HtmlForm Serversteuerelements zur Laufzeit enthalten.

Das zu überprüfende Steuerelement lautet null.

Beispiele

Im folgenden Codebeispiel wird die Page.Render Methode eines benutzerdefinierten Serversteuerelements außer Kraft gesetzt. Wenn dieses Steuerelement seinen Inhalt auf eine Seite schreibt, wird mithilfe der VerifyRenderingInServerForm Methode sichergestellt, dass das Steuerelement zwischen den öffnenden und schließenden Tags eines HtmlForm Steuerelements angezeigt wird.

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

Hinweise

Steuerelemente, die innerhalb <form runat=server> von Tags enthalten sein müssen, können diese Methode aufrufen, bevor sie gerendert werden, damit eine Fehlermeldung angezeigt wird, wenn sie außerhalb der Tags platziert werden. Steuerelemente, die zurückkommen oder von registrierten Skriptblöcken abhängen, sollten diese Methode in einer Außerkraftsetzung der Control.Render Methode aufrufen. Seiten mit einer anderen Methode zum Rendern des Serverformularelements können diese Methode überschreiben, um eine Ausnahme unter verschiedenen Bedingungen auszulösen.

Serversteuerelemente, die ein clientseitiges Skript bereitstellen oder verwenden, funktionieren nicht, wenn sie nicht in die HtmlForm Serversteuerelementtags (<form runat="server">) eingeschlossen sind. Diese Steuerelemente können diese Methode aufrufen, wenn sie gerendert werden, um eine eindeutige Fehlermeldung bereitzustellen, wenn sie nicht in das HtmlForm Steuerelement eingeschlossen sind.

Wenn Sie ein benutzerdefiniertes Serversteuerelement entwickeln, wird diese Methode häufig aufgerufen, wenn Sie die Render Methode für jede Art von Eingabetag außer Kraft setzen. Dies ist besonders wichtig, wenn das Eingabesteuerelement aufruft GetPostBackEventReferenceoder clientskripts ausgibt. Ein zusammengesetztes Serversteuerelement muss diesen Aufruf nicht ausführen.

Gilt für: