Поделиться через


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 , который возвращается из базового метода.

Применяется к

См. также раздел