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
從基底方法傳回的 。