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