Élément RenderPattern (Types de champs)
S’applique à : | SharePoint 2016 SharePoint Foundation 2013 | | SharePoint Online SharePoint Server 2013
Importante
Cette rubrique décrit le balisage utilisé dans une méthode désormais obsolète de rendu des types de champs personnalisés sur les affichages de liste et sur les formulaires Display, Edit et New. Il est fourni uniquement pour aider les personnes qui déboguent un type de champ personnalisé qui a été initialement développé sur une version antérieure de SharePoint Foundation. Pour plus d’informations sur les méthodes recommandées, consultez Modèles de rendu de champ et modèles de rendu de champ personnalisé.
Les champs personnalisés dont le rendu est défini avec le balisage RenderPattern s’affichent toujours correctement sur les formulaires. Toutefois, SharePoint Foundation, par défaut, utilise des feuilles de style XSLT pour afficher les champs sur les affichages de liste, même pour les champs personnalisés hérités dont le rendu de l’affichage de liste est défini avec un RenderPattern. Pour activer le rendu d’un tel champ, un <Field Name="CAMLRendering">TRUE</Field>
élément doit être ajouté à l’élément FieldTypes contenant dans le fichier de définition de type de champ (fldtype*.xml
).
RenderPattern définit le langage CAML (Collaborative Application Markup Language), HTML et script réels que SharePoint Foundation peut utiliser pour afficher 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>
Éléments et attributs
Les sections suivantes décrivent les attributs, les éléments enfants et les éléments parents.
Attributs
Attribut | Description |
---|---|
Nom |
Argument de type String obligatoire. Représente le nom du modèle d'affichage que vous définissez dans cet élément RenderPattern. Les valeurs valides sont les suivantes : - HeaderPattern. Définit le rendu de l’en-tête de colonne sur les pages d’affichage de liste lorsque le rendu CAML est activé (en incluant <Field Name="CAMLRendering">TRUE</Field> dans l’élément FieldTypes conteneur du fldtypes*.xml fichier).- DisplayPattern. Définit le rendu du champ pour le formulaire Affichage (élément de liste). Lorsque le rendu CAML est activé (en incluant <Field Name="CAMLRendering">TRUE</Field> dans l’élément FieldTypes contenant le fldtypes*.xml fichier), l’objet DisplayPattern définit également le rendu du champ sur 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 (« ce que vous voyez est ce que vous obtenez »), tel que SharePoint Designer, un aperçu de l’aspect du champ en mode Affichage à l’aide de données fictives. - PreviewEditPattern. Définit, pour une utilisation dans un concepteur de site WYSIWYG tel que SharePoint Designer, un aperçu de l’apparence du champ en mode Édition à l’aide de données fictives. - PreviewNewPattern. Définit, pour une utilisation dans un concepteur de site WYSIWYG tel que SharePoint Designer, un aperçu de l’aspect du champ en mode Nouveau à l’aide de données fictives. |
Éléments enfants
Aucun défini explicitement, mais cet élément est un conteneur de balisage CAML à partir du schéma View.
Éléments parents
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é, le type de champ doit avoir un type HeaderPattern de l’élément RenderPattern , directement ou par héritage, ou l’en-tête de colonne du champ dans les affichages de liste ne s’affiche pas. Le balisage dans 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 assez complexe, car l’en-tête sert non seulement de titre pour la colonne, mais également comme un contrôle de menu déroulant pour le tri et le filtrage. En outre, étant donné que la possibilité d’être trié et filtré peut être désactivée pour des colonnes particulières (même si le type de champ sur lequel la colonne est basée les prend en charge), le balisage doit utiliser des éléments Switch pour tester si le tri ou le filtrage est activé pour la colonne. Pour obtenir des exemples, consultez %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\XML\FLDTYPES.XML.
DisplayPattern
Si le rendu CAML est activé, un type de champ doit avoir un type DisplayPattern de l’élément RenderPattern (par héritage, si ce n’est pas directement) afin que le champ puisse être affiché sur les affichages de liste. Cela n’est pas nécessaire pour afficher le champ en mode Affichage, par exemple sur la page Affichage (élément de liste), car un champ peut également être rendu en mode Affichage au moyen d’un contrôle de rendu (fichier .ascx). Aucun des types de champs hérités fournis avec SharePoint Foundation n’utilise un contrôle de rendu plutôt qu’un type DisplayPattern d’élément RenderPattern pour afficher le champ en mode Affichage.
Le type DisplayPattern de RenderPattern peut également être utilisé pour afficher le champ dans chaque ligne d’un affichage de liste. Par défaut, SharePoint Foundation utilise le balisage XSLT dans un fldtypes*.xsl
fichier situé dans %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\LAYOUTS\XSL pour afficher les champs sur les affichages de liste. Toutefois, la fldtypes*.xml
présence du fichier dans %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\XML est vérifiée pour la présence de <Field Name="CAMLRendering">TRUE</Field>
dans l’élément FieldTypes contenant pour le champ. S’il est présent, le DisplayPattern est utilisé pour afficher le champ sur les affichages de liste.
Remarque
Deux types de champs hérités fournis avec SharePoint Foundation n’ont pas de type DisplayPatternRenderPattern 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 ont été utilisés pour afficher un champ en mode Nouveau et En mode Édition, respectivement, lorsque le champ ne nécessitait pas de traitement de données significatif ou de validation des données lorsqu’un élément de liste contenant le champ était en cours de création ou de modification. 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.
Pour obtenir des exemples de types NewPattern et EditPattern de RenderPatterns, consultez %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\XML\FLDTYPES.XML.
RenderPatterns pour les types de champs personnalisés dérivés de plusieurs colonnes
Dans le balisage RenderPattern d’un champ MultiColumn personnalisé, l’attribut SubcolumnNumber d’un élément Column est utilisé pour spécifier une colonne individuelle dans un type de champ multicolonne. Pour plus d'informations sur les types de champ multicolonne, voir Custom Multicolumn Field Classes.
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 l’adresse postale suivie d’un saut de ligne HTML. La sous-colonne 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>