WebPartChrome.RenderPartContents(HtmlTextWriter, WebPart) Metodo

Definizione

Esegue il rendering dell'area di contenuto principale di un controllo WebPart, ad eccezione dell'intestazione e del piè di pagina.

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)

Parametri

writer
HtmlTextWriter

Oggetto HtmlTextWriter che riceve il contenuto del controllo webPart.

webPart
WebPart

Controllo di cui viene attualmente eseguito il rendering.

Esempio

Nell'esempio di codice seguente viene illustrato l'uso del RenderPartContents metodo . Per il codice completo necessario per eseguire l'esempio, vedere la sezione Esempio dell'argomento di panoramica della WebPartChrome classe.

Nella sezione seguente dell'esempio di codice viene illustrato come eseguire l'override del RenderPartContents metodo . Il metodo sottoposto a override esegue due operazioni per personalizzare il rendering per il corpo del WebPart controllo. Prima di tutto, controlla se il controllo è attualmente selezionato e, in tal caso, scrive una stringa e non esegue il rendering del contenuto. In secondo luogo, se il controllo non è selezionato e se la zona del controllo è di tipo MyZone, il metodo esegue il rendering del controllo. Questo ultimo controllo può essere usato se si desidera assicurarsi che una classe personalizzata WebPartChrome possa essere usata solo per eseguire il rendering WebPart dei controlli in un tipo specifico di WebPartZone zona progettato per contenere l'oggetto 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

Se si carica la pagina Web in un browser, è possibile vedere che il contenuto di ogni controllo viene eseguito normalmente. Se si passa la pagina in modalità progettazione (selezionando Progettazione nel controllo elenco a discesa Modalità di visualizzazione ) e trascinando uno dei controlli nell'area vuota con etichetta WebPartZone2, il rendering del contenuto del controllo viene eseguito in modo diverso, perché l'oggetto personalizzato WebPartChrome non viene utilizzato per il rendering in un'area standard. Si tratta dello stesso effetto che si otterrebbe se si tenta di usare la classe personalizzata WebPartChrome con qualsiasi altra zona oltre alla MyZone classe, a causa del codice sorgente precedente.

Commenti

Il RenderPartContents metodo consente di eseguire l'override del rendering dell'area del corpo di webPart, lasciando il rendering dell'intestazione e del piè di pagina al rendering predefinito.

Note per gli eredi

Facoltativamente, è possibile eseguire l'override del RenderPartContents(HtmlTextWriter, WebPart) metodo . In tal caso, è sufficiente eseguire le personalizzazioni di rendering desiderate per webParte quindi chiamare il relativo RenderControl(HtmlTextWriter) metodo. Se si vuole anche fare affidamento sul rendering predefinito in caso di errori di connessione, chiamare prima il metodo di base e quindi personalizzare l'oggetto writer restituito dal metodo di base.

Si applica a

Vedi anche