WebPartChrome.RenderPartContents(HtmlTextWriter, WebPart) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
呈現 WebPart 控制項的主要內容區域,但不包括頁首和頁尾。
protected:
virtual void RenderPartContents(System::Web::UI::HtmlTextWriter ^ writer, System::Web::UI::WebControls::WebParts::WebPart ^ webPart);
protected virtual void RenderPartContents (System.Web.UI.HtmlTextWriter writer, System.Web.UI.WebControls.WebParts.WebPart webPart);
abstract member RenderPartContents : System.Web.UI.HtmlTextWriter * System.Web.UI.WebControls.WebParts.WebPart -> unit
override this.RenderPartContents : System.Web.UI.HtmlTextWriter * System.Web.UI.WebControls.WebParts.WebPart -> unit
Protected Overridable Sub RenderPartContents (writer As HtmlTextWriter, webPart As WebPart)
參數
- writer
- HtmlTextWriter
接收 HtmlTextWriter 內容的 webPart
。
- webPart
- WebPart
目前正在呈現的控制項。
範例
下列程式碼範例示範如何使用 RenderPartContents 方法。 如需執行範例所需的完整程式碼,請參閱類別概觀主題的 WebPartChrome 範例一節。
程式碼範例的下一節示範如何覆寫 RenderPartContents 方法。 覆寫的方法會執行兩項動作來自訂控制項主體的 WebPart 轉譯。 首先,它會檢查是否目前選取控制項,如果是,則會寫出字串,而不會呈現內容。 其次,如果未選取控制項,而且控制項的區欄位型別為 MyZone
,則方法會轉譯控制項。 如果您想要確保自訂 WebPartChrome 類別只能用於轉 WebPart 譯特定類型 WebPartZone 區域中的控制項,而這個後者檢查是用來包含 WebPartChrome 物件。
protected override void RenderPartContents(HtmlTextWriter writer,
WebPart part)
{
if (part == this.WebPartManager.SelectedWebPart)
HttpContext.Current.Response.Write("<span>Not rendered</span>");
else
if(this.Zone.GetType() == typeof(MyZone))
part.RenderControl(writer);
}
Protected Overrides Sub RenderPartContents _
(ByVal writer As HtmlTextWriter, ByVal part As WebPart)
If part Is Me.WebPartManager.SelectedWebPart Then
HttpContext.Current.Response.Write("<span>Not rendered</span>")
Else
If (Me.Zone.GetType() Is GetType(MyZone)) Then
part.RenderControl(writer)
End If
End If
End Sub
如果您在瀏覽器中載入網頁,您可以看到每個控制項的內容會正常轉譯。 如果您選取 [顯示 (模式] 下拉式清單中的 [設計] 下拉式清單控制項) 並將其中一個控制項拖曳至標示為 WebPartZone2 的空白區域,則控制項的內容會以不同的方式轉譯,因為自訂 WebPartChrome 物件不會用於標準區域中的轉譯。 如果您嘗試將自訂 WebPartChrome 類別與 類別以外的 MyZone
任何其他區域搭配使用,因為上述原始程式碼,這是一樣的效果。
備註
方法 RenderPartContents 可讓您覆寫 的主體區域 webPart
轉譯,同時將頁首和頁尾轉譯保留為預設轉譯。
給繼承者的注意事項
您可以選擇覆寫 RenderPartContents(HtmlTextWriter, WebPart) 方法。 若是如此,您可以直接執行您想要的任何 webPart
轉譯自訂,然後呼叫其 RenderControl(HtmlTextWriter) 方法。 如果您也想要依賴連接錯誤時的預設轉譯,請先呼叫基底方法,然後自訂 writer
從基底方法傳回的 。