Share via


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

用于接收 webPart 内容的 HtmlTextWriter

webPart
WebPart

当前正在呈现的控件。

示例

下面的代码示例演示如何使用 RenderPartContents 方法。 有关运行示例所需的完整代码,请参阅类概述主题的示例 WebPartChrome 部分。

代码示例中的以下部分演示如何重写 RenderPartContents 方法。 重写的方法执行两项操作来自定义控件主体的 WebPart 呈现。 首先,它检查以确定控件当前是否处于选中状态,如果是,则写出一个字符串,并且不呈现内容。 其次,如果未选择控件,并且控件的区域的类型 MyZone为 ,则 方法呈现控件。 如果要确保自定义WebPartChrome类只能用于呈现WebPart设计为包含WebPartChrome对象的特定类型的区域中的WebPartZone控件,则可以使用后一种检查。

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 从基方法返回的 。

适用于

另请参阅