WebPartChrome.RenderPartContents(HtmlTextWriter, WebPart) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Génère le rendu de la zone de contenu principale d'un contrôle WebPart, à l'exclusion de l'en-tête et du pied de page.
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)
Paramètres
- writer
- HtmlTextWriter
HtmlTextWriter qui reçoit le contenu webPart
.
- webPart
- WebPart
Contrôle actuellement en cours de présentation.
Exemples
L’exemple de code suivant illustre l’utilisation de la RenderPartContents méthode . Pour obtenir le code complet requis pour exécuter l’exemple, consultez la section Exemple de la rubrique Vue d’ensemble de la WebPartChrome classe.
La section suivante de l’exemple de code montre comment remplacer la RenderPartContents méthode . La méthode substituée effectue deux opérations pour personnaliser le rendu du corps du WebPart contrôle. Tout d’abord, il vérifie si le contrôle est actuellement sélectionné et, le cas échéant, écrit une chaîne et ne rend pas le contenu. Deuxièmement, si le contrôle n’est pas sélectionné et si la zone du contrôle est de type MyZone
, la méthode restitue le contrôle. Cette dernière vérification peut être utilisée si vous souhaitez vous assurer qu’une classe personnalisée WebPartChrome peut être utilisée uniquement pour afficher WebPart des contrôles dans un type spécifique de WebPartZone zone conçu pour contenir l’objet 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
Si vous chargez la page Web dans un navigateur, vous pouvez voir que le contenu de chaque contrôle est affiché normalement. Si vous basculez la page en mode Création (en sélectionnant Création dans le contrôle de liste déroulante Mode d’affichage ) et faites glisser l’un des contrôles dans la zone vide intitulée WebPartZone2, le contenu du contrôle est affiché différemment, car l’objet personnalisé WebPartChrome n’est pas utilisé pour le rendu dans une zone standard. Il s’agit du même effet que si vous essayiez d’utiliser la classe personnalisée WebPartChrome avec n’importe quelle autre zone en dehors de la MyZone
classe, en raison du code source précédent.
Remarques
La RenderPartContents méthode vous permet de remplacer le rendu de la zone du corps de webPart
, tout en laissant le rendu de l’en-tête et du pied de page au rendu par défaut.
Notes pour les héritiers
Vous pouvez éventuellement remplacer la RenderPartContents(HtmlTextWriter, WebPart) méthode . Si c’est le cas, vous pouvez simplement effectuer les personnalisations de rendu souhaitées pour webPart
, puis appeler sa RenderControl(HtmlTextWriter) méthode. Si vous souhaitez également vous appuyer sur le rendu par défaut en cas d’erreurs de connexion, appelez d’abord la méthode de base, puis personnalisez le writer
retourné par la méthode de base.