WebPartChrome.RenderPartContents(HtmlTextWriter, WebPart) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Procesa el área de contenido principal de un control WebPart, excepto el encabezado y el pie de página.
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)
Parámetros
- writer
- HtmlTextWriter
Objeto HtmlTextWriter que recibe el contenido de webPart
.
- webPart
- WebPart
Control que se representa actualmente.
Ejemplos
En el ejemplo de código siguiente se muestra el uso del RenderPartContents método . Para obtener el código completo necesario para ejecutar el ejemplo, vea la sección Ejemplo del tema de información general de la WebPartChrome clase.
En la sección siguiente del ejemplo de código se muestra cómo invalidar el RenderPartContents método . El método invalidado hace dos cosas para personalizar la representación del cuerpo del WebPart control. En primer lugar, comprueba si el control está seleccionado actualmente y, si es así, escribe una cadena y no representa el contenido. En segundo lugar, si el control no está seleccionado y si la zona del control es de tipo MyZone
, el método representa el control. Esta última comprobación podría usarse si desea asegurarse de que una clase personalizada WebPartChrome solo se puede usar para representar WebPart controles en un tipo específico de WebPartZone zona diseñado para contener el WebPartChrome objeto .
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
Si carga la página web en un explorador, puede ver que el contenido de cada control se representa normalmente. Si cambia la página al modo de diseño (seleccionando Diseño en el control de lista desplegable Modo de presentación) y arrastra uno de los controles a la zona vacía etiquetada WebPartZone2, el contenido del control se representa de forma diferente, porque el objeto personalizado WebPartChrome no se usa para la representación en una zona estándar. Este es el mismo efecto que lograría si intentó usar la clase personalizada WebPartChrome con cualquier otra zona además de la MyZone
clase, debido al código fuente anterior.
Comentarios
El RenderPartContents método permite invalidar la representación del área del cuerpo de webPart
, mientras deja la representación del encabezado y pie de página en la representación predeterminada.
Notas a los desarrolladores de herederos
Opcionalmente, puede invalidar el RenderPartContents(HtmlTextWriter, WebPart) método . Si es así, simplemente puede realizar las personalizaciones de representación que desee para webPart
y, a continuación, llamar a su RenderControl(HtmlTextWriter) método. Si también quiere confiar en la representación predeterminada en caso de errores de conexión, llame primero al método base y, a continuación, personalice el writer
que se devuelve desde el método base.