Partager via


Procédure pas à pas : création d'un champ personnalisé, d'un type de contenu, d'une définition de liste et d'une instance de liste

La procédure suivante montre comment créer, dans SharePoint, un champ personnalisé appelé Nom du patient, ainsi qu'un type de contenu qui utilise ce champ. Vous apprendrez également comment ajouter une définition de liste au projet (ainsi qu'une instance de liste basée sur la définition de liste) qui tire parti du nouveau type de contenu et du nouveau champ.

Cette procédure pas à pas présente les tâches suivantes :

  • Création et personnalisation d'un champ.

  • Création et personnalisation d'un type de contenu qui utilise le champ.

  • Création et personnalisation d'une définition de liste.

  • Création et personnalisation d'une instance de liste de la définition de liste.

  • Visualisation du nouveau champ dans le type de contenu et l'instance de liste.

Notes

Il est possible que votre ordinateur affiche des noms ou des emplacements différents pour certains des éléments d'interface utilisateur de Visual Studio dans les instructions suivantes. L'édition de Visual Studio dont vous disposez et les paramètres que vous utilisez déterminent ces éléments. Pour plus d'informations, consultez Paramètres Visual Studio.

Composants requis

Pour exécuter cette procédure pas à pas, vous devez disposer des composants suivants :

Création d'un élément de champ personnalisé

Commencez par créer un élément de champ personnalisé sous la forme d'un projet SharePoint dans Visual Studio et appelez-le Patient Name.

Pour créer un élément de champ personnalisé

  1. Dans le menu Fichier, pointez sur Nouveau, puis cliquez sur Nouveau projet pour ouvrir la boîte de dialogue Nouveau projet.

  2. Développez le nœud SharePoint sous Visual C# ou Visual Basic, puis cliquez sur 2010.

  3. Cliquez sur Projet SharePoint vide dans le volet Modèles, remplacez le nom du projet par CustomField1, puis cliquez sur OK.

    L'Assistant Personnalisation de SharePoint s'affiche. Comme aucun modèle n'a été prévu pour les éléments de champ personnalisé, nous nous baserons ici sur le modèle Projet vide.

  4. Dans la page Spécifier le site et le niveau de sécurité pour le débogage, entrez l'URL du site de serveur SharePoint auquel vous souhaitez ajouter le nouvel élément de champ personnalisé ou utilisez l'emplacement par défaut (http://<system name>/).).

  5. Dans la section Quel est le niveau de confiance de cette solution SharePoint ?, utilisez la valeur par défaut de Déployer en tant que solution bac à sable (sandbox).

    Pour plus d'informations sur les solutions bac à sable (sandbox) et les solutions de batterie, consultez Considérations sur les solutions bac à sable (sandbox).

  6. Cliquez sur Terminer. Le projet doit s'afficher dans l'Explorateur de solutions.

  7. Ajoutez élément de projet Élément vide au projet. Pour ce faire, cliquez sur le nœud de projet du champ (CustomField1) dans l'Explorateur de solutions, puis cliquez sur Ajouter un nouvel élément dans le menu Projet.

  8. Développez le nœud SharePoint sous Visual C# ou Visual Basic, puis cliquez sur 2010.

  9. Dans le volet Modèles, sélectionnez Élément vide, conservez le nom par défaut EmptyElement1, puis cliquez sur Ajouter.

  10. Dans le fichier Elements.xml sous EmptyElement1, insérez ce qui suit après la balise <Elements> :

    <Field ID="{5744d18c-305e-4632-8bd1-09d134f4830d}" 
        Type="Note" 
        Name="PatientName" 
        DisplayName="Patient Name" 
        Group="A Custom Group">
    </Field>
    

    Vous venez d'ajouter un champ nommé Patient Name.

    Important

    Lorsque vous ajoutez un champ personnalisé, vous devez spécifier les attributs ID, Type, Name, DisplayName et Group pour que le champ s'affiche correctement dans SharePoint. La saisie semi-automatique des instructions indique à tort que vous avez besoin uniquement des trois premiers de ces attributs alors que tous les cinq sont requis.

  11. Appuyez sur F5 pour exécuter le projet et le déployer sur SharePoint.

    Si un message s'affiche pour vous avertir que le débogage de script est désactivé, cliquez sur Oui pour continuer le débogage.

  12. Si c'est la première fois que vous déboguez une application Web dans Visual Studio, un message vous demande si vous souhaitez modifier le fichier de configuration Web pour activer le débogage. Répondez Oui.

  13. En haut de la page Web SharePoint, cliquez sur le bouton Actions du site, puis cliquez sur Paramètres du site.

  14. Sous la section Galeries de la page Paramètres du site, cliquez sur le lien Colonnes de site.

  15. À la page Galerie des colonnes de sites, faites défiler l'écran vers le bas jusqu'à l'en-tête Colonnes personnalisées et remarquez la présence du nouvel élément de champ Patient Name.

  16. Fermez le navigateur.

Création d'un type de contenu personnalisé

Vous allez maintenez produire un type de contenu basé sur la liste Contacts SharePoint en tirant parti du nouveau champ créé lors de la procédure précédente.

Pour créer un type de contenu personnalisé

  1. Ajoutez un type de contenu au projet. Pour ce faire, cliquez sur le nœud de projet dans l'Explorateur de solutions, puis cliquez sur Ajoutez un nouvel élément dans le menu Projet.

  2. Développez le nœud SharePoint sous Visual C# ou Visual Basic, puis cliquez sur 2010.

  3. Dans le volet Modèles, sélectionnez Type de contenu et utilisez le nom par défaut, ContentType1.

  4. Dans l'Assistant Personnalisation de SharePoint, sélectionnez le type de contenu Contact qui vous servira de modèle, puis cliquez sur Terminer.

    Il suffit, à présent, d'éditer le fichier Elements.xml du type de contenu que vous venez d'ouvrir.

  5. Dans la section <FieldRefs> du fichier Elements.xml, copiez et collez ce qui suit :

    <FieldRef ID="{5744d18c-305e-4632-8bd1-09d134f4830d}" 
        Name="PatientName" 
        DisplayName="Patient Name" 
        Required="TRUE"/>
    

    L'ID FieldRef utilisé ici fait référence à l'ID de champ défini pour le champ personnalisé.

  6. Appuyez sur F5 pour exécuter et déployer le projet.

  7. En haut de la page Web SharePoint, cliquez sur le bouton Actions du site, puis cliquez sur Paramètres du site.

  8. Dans la section Galeries de la page Paramètres du site, cliquez sur le lien Types de contenu de site.

  9. Vérifiez si la page Galerie des types de contenu de site contient bien le type de contenu récemment créé, c'est-à-dire CustomField1 - ContentType1. Cliquez dessus pour afficher les champs correspondants. Dans la liste des champs de CustomField1 - ContentType1, notez la présence du champ Patient Name.

  10. Fermez le navigateur.

Création d'une définition de liste et d'une instance de liste

Nous allons maintenant créer une définition de liste et une instance de liste qui tireront parti du nouveau type de contenu et du nouveau champ. Étant donné que la définition de liste sera basée sur le type de contenu que nous venons de créer, nous utiliserons le modèle d'élément de projet Définition de liste du type de contenu.

Pour créer une définition de liste et une instance de liste

  1. Ajoutez une définition de liste au projet. Pour ce faire, cliquez sur le nœud de projet dans l'Explorateur de solutions, puis cliquez sur Ajoutez un nouvel élément dans le menu Projet.

  2. Développez le nœud SharePoint sous Visual C# ou Visual Basic, puis cliquez sur 2010.

  3. Dans le volet Modèles, sélectionnez Définition de liste du type de contenu et utilisez le nom proposé par défaut (ListDefinition1).

  4. Dans la zone Quel est le nom complet de la définition de liste, conservez la valeur par défaut, CustomField1 - ListDefinition1.

  5. Dans la liste Quel type de contenu voulez-vous utiliser pour la définition de liste, utilisez la valeur par défaut (et uniquement celle-ci), CustomField1 - ContentType1.

    Cela permet de créer une définition de liste personnalisable basée sur la liste Contacts modifiée.

  6. Sélectionnez la case Ajouter une instance de liste pour cette définition de liste pour ajouter un élément de projet d'instance de liste au projet. L'instance de liste constituera une instance de la nouvelle définition de liste.

  7. Cliquez sur Terminer. La définition de liste doit être visible dans l'Explorateur de solutions.

Personnalisation de la définition de liste

Pour finir, vous allez personnaliser la définition de liste en y ajoutant un nouveau champ (Nom du patient).

Important

La valeur de l'attribut Name dans le fichier Elements.xml de la définition de liste doit correspondre au nom du dossier de l'élément de projet de définition de liste. Dans le cas contraire, vous obtiendrez une erreur au moment de l'exécution du projet. Pour être certain que l'attribut Name correspond au nom du dossier, il convient d'utiliser le paramètre de remplacement (ou le jeton) $ProjectItemName$. Lors de l'empaquetage et du déploiement du projet SharePoint, ce jeton sera converti en nom de dossier réel de la définition de liste. Si vous utilisez une valeur autre que le jeton pour l'attribut Name, votre application risque de ne pas fonctionner correctement. Pour plus d'informations, consultez Paramètres remplaçables.

Pour ajouter un champ à la définition de liste

  1. Dans l'Explorateur de solutions, double-cliquez sur Schema.xml sous ListDefinition1 pour l'afficher.

    Schema.xml définit l'ensemble des champs et des autres éléments de la définition de liste, comme le nom et l'adresse. Vous remarquerez sous l'élément <Fields> en haut du fichier que la définition de champ suivante a été ajoutée par le type de contenu :

    <FieldRef ID="{5744d18c-305e-4632-8bd1-09d134f4830d}" 
        Name="PatientName" 
        DisplayName="Patient Name" 
        Required="TRUE" />
    
  2. Appuyez sur F5 pour exécuter et déployer le projet.

  3. Dans la section Listes de la barre de lancement rapide SharePoint, cliquez sur le lien CustomField1 - ListInstance1.

    Il s'agit de l'instance de liste pour la nouvelle définition de liste. Notez que le nouveau champ Patient Name n'est pas encore considéré comme une colonne dans l'instance de liste.

  4. Cliquez sur Liste dans l'onglet de menu Outils de liste en haut de la page, puis sur le bouton Modifier l'affichage sur la barre du ruban.

  5. Dans la liste des noms de colonnes disponibles, sélectionnez Patient Name, puis cliquez sur OK. Remarquez que le champ Nom du patient figure, à présent, dans l'instance de liste.

Voir aussi

Autres ressources

Développement de solutions SharePoint

Procédure : créer un type de champ personnalisé

Types de contenu

Colonnes