確認在 Run Time 時期呈現了所指定 ASP.NET 伺服器控制項的
HtmlForm 控制項。
命名空間: System.Web.UI
組件: System.Web (在 system.web.dll 中)
Public Overridable Sub VerifyRenderingInServerForm ( _
control As Control _
)
Dim instance As Page
Dim control As Control
instance.VerifyRenderingInServerForm(control)
public virtual void VerifyRenderingInServerForm (
Control control
)
public:
virtual void VerifyRenderingInServerForm (
Control^ control
)
public void VerifyRenderingInServerForm (
Control control
)
public function VerifyRenderingInServerForm (
control : Control
)
參數
- control
在 HtmlForm 控制項中的必要 ASP.NET 伺服器控制項。
| 例外狀況類型 | 條件 |
|---|
HttpException | 指定的伺服器控制項在 Run Time 時期並不包含於 HtmlForm 伺服器控制項的開頭和結尾標記之間。 |
必須位在 <form runat=server> 標記以內的控制項,可以先呼叫這個方法,才進行呈現,這樣一來,如果控制項位在標記以外,便會顯示錯誤訊息。會回傳或是依賴已註冊指令碼區塊的控制項,應該呼叫這個方法來覆寫 Control.Render 方法。對於伺服器表單項目有不同呈現方法的網頁,可以覆寫這個方法以便在不同條件下擲回例外狀況。
會回傳或使用用戶端指令碼的伺服器控制項,如果未放在 HtmlForm 伺服器控制項 (<form runat="server">) 標記之內,將無法運作。這些控制項可以呼叫這個方法來呈現清楚的錯誤訊息 (當它們未被封入 HtmlForm 控制項時)。
當您開發自訂伺服器控制項時,通常會呼叫這個方法來覆寫任何類型的輸入標記之 Render 方法。這在輸入控制項呼叫 GetPostBackEventReference 或發出用戶端指令碼時特別重要。複合伺服器控制項並不需要做這個呼叫。
下列程式碼範例將示範覆寫自訂伺服器控制項中的 Page.Render 方法。當這個控制項將其內容寫入頁面時,它會使用 VerifyRenderingInServerForm 方法來確定控制項出現在 HtmlForm 控制項的開頭和結尾標記之間。
' 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
// 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 void Render(HtmlTextWriter writer)
{
// Ensure that the control is nested in a server form.
if (get_Page() != null) {
get_Page().VerifyRenderingInServerForm(this);
}
super.Render(writer);
} //Render
Windows 98、 Windows 2000 SP4、 Windows Server 2003、 Windows XP Media Center Edition、 Windows XP Professional x64 Edition、 Windows XP SP2、 Windows XP Starter Edition
.NET Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。
.NET Framework
支援版本:2.0、1.1、1.0