Partager via


RenderPattern, élément (Types de champs)

Dernière modification : vendredi 9 avril 2010

S’applique à : SharePoint Foundation 2010

Dans cet article
Attributs
Éléments enfants
Éléments parents

Important

Cette rubrique décrit le balisage qui était utilisé dans une méthode désormais obsolète de rendu des types de champs personnalisés dans les affichages de liste et dans les formulaires Affichage, Modifier et Nouveau. Elle est fournie uniquement pour faciliter le débogage d’un type de champ personnalisé initialement développé par rapport à une version antérieure de SharePoint Foundation. Pour plus d’informations sur les méthodes recommandées, voir Procédure : créer des modèles de rendu de champ et Procédure : créer un type de champ personnalisé.

Les champs personnalisés dont le rendu est défini avec le balisage RenderPattern continuent de s’afficher correctement dans les formulaires. Toutefois, SharePoint Foundation, par défaut, utilise des feuilles de style XSLT pour restituer les champs dans les affichages de liste, même pour les champs personnalisés hérités dont le rendu d’affichage de liste est défini avec un balisage RenderPattern. Pour activer le rendu d’un champ de ce type, vous devez ajouter un élément <Field Name="CAMLRendering">TRUE</Field> à l’élément FieldTypes conteneur dans le fichier de définition de type de champ (fldtype*.xml).

RenderPattern définit le code Langage CAML (Collaborative Application Markup Language) ou HTML ou le script réel que SharePoint Foundation peut utiliser pour restituer le type de champ dans l’interface utilisateur. De plus, dans les affichages de listes, cet élément restitue les en-têtes de colonne, d’après le type de champ sélectionné.

<RenderPattern Name="Text">
</RenderPattern>

Attributs

Attribut

Description

Name

Chaîne obligatoire. Représente le nom du modèle d'affichage que vous définissez dans cet élément RenderPattern.

Les valeurs valides sont :

  • HeaderPattern. Définit le rendu de l’en-tête de colonne dans les pages d’affichage de liste lorsque le rendu CAML est activé (grâce à l’inclusion de <Field Name="CAMLRendering">TRUE</Field> dans l’élément FieldTypes conteneur du fichier fldtypes*.xml).

  • DisplayPattern. Définit le rendu du champ pour le formulaire Affichage (élément de liste). Lorsque le rendu CAML est activé (grâce à l’inclusion de <Field Name="CAMLRendering">TRUE</Field> dans l’élément FieldTypes conteneur du fichier fldtypes*.xml), DisplayPattern définit également le rendu du champ dans les pages d’affichage de liste.

  • EditPattern. Définit l'affichage du champ pour le formulaire (élément de liste) de modification.

  • NewPattern. Définit l'affichage du champ pour le nouveau formulaire (élément de liste).

  • PreviewDisplayPattern. Définit, pour une utilisation dans un concepteur de site WYSIWYG (« tel écrit, tel écran ») tel que SharePoint Designer, un aperçu du comportement du champ en mode d’affichage avec des données fictives.

  • PreviewEditPattern. Définit, pour une utilisation dans un concepteur de site WYSIWYG (« tel écrit, tel écran ») tel que SharePoint Designer, un aperçu du comportement du champ en mode de modification avec des données fictives.

  • PreviewNewPattern. Définit, pour une utilisation dans un concepteur de site WYSIWYG (« tel écrit, tel écran ») tel que SharePoint Designer, un aperçu du comportement du champ en mode de création avec des données fictives.

Éléments enfants

Aucun explicitement défini, mais cet élément est un conteneur de balisage CAML du Schéma d'affichage

Éléments parents

FieldType, élément (types de champ)

Remarques

Héritage de RenderPatterns

S'il n'y a pas de RenderPattern avec une valeur Name particulière pour un type de champ, ce dernier hérite du RenderPattern du même nom à partir de son type de champ parent.

HeaderPattern

Si le rendu CAML est activé (voir plus haut), le type de champ doit avoir un type HeaderPattern d’élément RenderPattern, que ce soit directement ou par héritage, sinon l’en-tête de colonne du champ dans les affichages de liste ne s’affiche pas. Le balisage d’un HeaderPattern peut être assez simple lorsque le type de champ ne peut pas être trié ou filtré. Toutefois, si le type de champ peut être trié ou filtré, le balisage peut devenir plutôt complexe, car l’en-tête ne sert pas uniquement de titre de colonne, mais également de contrôle de menu déroulant pour le tri et le filtrage. En outre, et parce que la fonction de tri et de filtrage peut être désactivée pour des colonnes particulières (même lorsque le type de champ sur lequel repose la colonne les prend en charge), le balisage doit utiliser des éléments Switch pour vérifier si le tri ou le filtrage est activé pour la colonne. Voir %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\XML\FLDTYPES.XML pour avoir des exemples.

DisplayPattern

Si le rendu CAML est activé (voir plus haut), un type de champ doit avoir le type DisplayPattern d’élément RenderPattern (par héritage, si ce n’est directement), afin que le champ puisse être affiché dans les affichages de liste. Cela n’est pas nécessaire pour restituer le champ dans le mode Affichage, par exemple dans la page Affichage (élément de liste), car un champ peut également être affiché en mode Affichage grâce à un contrôle d’affichage (fichier .ascx). Aucun des types de champs hérités proposés dans SharePoint Foundation n’utilise de contrôle d’affichage à la place d’un type DisplayPattern d’élément RenderPattern pour restituer le champ en mode Affichage.

Le type DisplayPattern de RenderPattern permet également de restituer le champ dans chaque ligne d’un affichage de liste. Par défaut, SharePoint Foundation utilise du balisage XSLT dans un fichier fldtypes*.xsl situé dans %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS\XSL pour restituer les champs dans les affichages de liste. Toutefois, le fichier fldtypes*.xml dans %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\XML est vérifié afin que soit déterminé si <Field Name="CAMLRendering">TRUE</Field> est présent dans l’élément FieldTypes conteneur pour le champ. Si tel est le cas, le balisage DisplayPattern est utilisé pour restituer le champ dans les affichages de liste.

Notes

Deux types de champs hérités fournis avec SharePoint Foundation n’ont pas de type DisplayPattern de RenderPattern dans FLDTYPES.XML : (1) les champs ContentTypeId ne sont jamais visibles. (2) Les champs calculés sont restitués dans les affichages de liste et en mode Affichage par un élément DisplayPattern dans leurs éléments Field au sein du fichier schema.xml de chaque liste où ils figurent.

NewPattern et EditPattern

Les types NewPattern et EditPattern de RenderPattern étaient utilisés pour restituer un champ respectivement dans les modes de création et de modification, lorsque le champ ne nécessitait pas énormément de traitement ou de validation de données lors de la création ou de la modification d’un élément de liste contenant ce champ. Par exemple, la validation des champs de note au format libre est impossible, parce que le texte ne constitue pas une valeur valide. C’est également le cas pour les champs de choix et de recherche, puisque par définition l’utilisateur ne peut choisir que des valeurs valides. D’autres champs, tels que les champs monétaires et de date et heure, nécessitent simplement une validation minimale qui peut être codée dans un script.

Voir %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\XML\FLDTYPES.XML pour avoir des exemples des types NewPattern et EditPattern pour RenderPattern.

RenderPatterns pour les types de champs personnalisés dérivés de champs multicolonnes

Dans le balisage RenderPattern pour un champ multicolonne personnalisé, l’attribut SubcolumnNumber d’un élément Column permet de spécifier une colonne individuelle dans un type de champ multicolonne. Pour plus d’informations sur les types de champ multicolonne, voir Classes de champ multicolonne personnalisées.

Exemple

L'exemple suivant définit un modèle de rendu d'affichage pour un type de champ personnalisé qui hérite du type multicolonne. Le champ est utilisé pour stocker les adresses américaines. La première sous-colonne stocke la rue. ensuite, il y a un saut de ligne HTML. La sous-solonne suivante stocke le nom de la ville, suivi d'une virgule et d'un espace. La troisième sous-colonne stocke l'état et, après un espace, la dernière sous-colonne stocke le code postal.

<RenderPattern Name="DisplayPattern">
  <Switch>
    <Expr><Column/></Expr>
    <Case Value="">
    </Case>
    <Default>
      <Column SubColumnNumber="0" HTMLEncode="TRUE"/>
      <HTML><![CDATA[<BR>]]></HTML>
      <Column SubColumnNumber="1" HTMLEncode="TRUE"/>
      <HTML><![CDATA[, &nbsp;]]></HTML>
      <Column SubColumnNumber="2" HTMLEncode="TRUE"/>
      <HTML><![CDATA[ &nbsp;]]></HTML>
      <Column SubColumnNumber="3" HTMLEncode="TRUE"/>
      </Default>
  </Switch>
</RenderPattern>

Voir aussi

Tâches

Procédure pas à pas : création d'un type de champ personnalisé

Concepts

Types de champ personnalisés

Procédure : créer une classe de champ personnalisé

Rendu des propriétés de type de champ personnalisés

Procédure : créer une définition de type de champ personnalisé

Classes de champ multicolonne personnalisées