WebPartChrome.RenderPartContents(HtmlTextWriter, WebPart) 方法

定義

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

適用於

另請參閱