Ajouter des récepteurs d’événements à des listes SharePoint 2010
Prise en main du développement Web dans SharePoint 2010 : découvrez comment attacher des récepteurs d’événements à des listes SharePoint 2010 personnalisées.
Dernière modification : mercredi 12 janvier 2011
S’applique à : Office 2010 | SharePoint Foundation 2010 | SharePoint Server 2010 | Visual Studio | Visual Studio 2010
Dans cet exercice, vous ajoutez à une liste Microsoft SharePoint 2010 personnalisée un récepteur d’événements qui est déclenché lorsque vous essayez de supprimer un élément de la liste. Pour accomplir cette tâche, vous devez effectuer les opérations suivantes :
Ouvrir le projet de définition de liste
Ajouter le code du récepteur d’événements
Tester la solution
Notes
Cet exercice suppose que vous avez déjà créé le projet de liste personnalisée intitulé Bugs dans Microsoft Visual Studio 2010. Les instructions relatives à la création du projet de définition de liste personnalisée se trouvent dans la note rapide Créer des définitions de liste personnalisées dans SharePoint 2010.
Ouvrir le projet de définition de liste
Dans cette tâche, vous ouvrez le projet de définition de liste dans Visual Studio 2010.
Pour ouvrir le projet de définition de liste
Démarrez Visual Studio 2010.
Dans le menu Fichier, pointez sur Ouvrir, puis cliquez sur Projet/Solution.
Accédez au fichier de projet de définition de liste (Bugs.sln), puis cliquez sur Ouvrir.
Ajouter le code du récepteur d’événements
Dans cette tâche, vous créez un récepteur d’événements et l’attachez à la définition de liste. Ce récepteur d’événements empêche la suppression des éléments de bogue et affiche un message.
Pour ajouter le récepteur d’événements à la définition de liste
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud Bugs, pointez sur Ajouter, puis cliquez sur Nouvel élément.
Dans la boîte de dialogue Nouveau projet, dans la section Modèles installés, cliquez sur Visual C#, sur SharePoint, puis sur 2010.
À partir des éléments de projet, cliquez sur Récepteur d’événements.
Tapez BugListItemEvent dans la zone Nom, puis cliquez sur Ajouter.
Dans l’Assistant Personnalisation de SharePoint, sélectionnez l’option Un élément est en cours de suppression, puis cliquez sur Terminer.
Dans l’Explorateur de solutions, développez BugListItemEvent, puis ouvrez le fichier Elements.xml.
Pour vous assurer que le récepteur d’événements n’est lié qu’à la liste personnalisée, vérifiez que l’attribut ListTemplateId dans l’élément Receivers est défini sur 10001.
Dans l’Explorateur de solutions, développez BugListItemEvent, puis ouvrez BugListItemEvent.cs. La méthode ItemDeleting doit normalement être substituée.
Insérez le code suivant dans le corps de la méthode ItemDeleting après l’instruction base.ItemDeleting(properties);. Ce code empêche la suppression d’un élément et affiche un message d’erreur.
try { properties.Cancel = true; properties.ErrorMessage = "Bugs can only be resolved not deleted!"; } catch (Exception ex) { return; } finally { this.EventFiringEnabled = true; }
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud Bugs puis cliquez sur Déployer. Si vous obtenez un message d’erreur de déploiement, cliquez sur Résoudre automatiquement.
Ouvrez le site Web que vous avez précédemment spécifié.
Dans la page d’accueil, dans le volet de navigation de gauche, cliquez sur la liste Bugs.
Sous l’onglet Outils de liste, cliquez sur Éléments, puis dans la liste déroulante Nouvel élément, cliquez sur Bug Item. L’écran Bugs - New Item apparaît.
Pour créer un bogue, tapez des informations dans les zones concernées, puis cliquez sur Enregistrer.
Ensuite, essayez de supprimer l’élément. Vous devez obtenir un message similaire à celui indiqué dans la figure 1.
Figure 1. Message d’erreur déclenché par la tentative de suppression de l’élément
Tester la solution
Dans cette tâche, vous créez un élément dans la liste personnalisée, puis vous déclenchez le récepteur d’événements en essayant de supprimer l’élément.
Pour tester la solution
Ouvrez le site Web que vous avez spécifié dans le projet de définition de liste.
Dans la page d’accueil, dans le volet de navigation de gauche, cliquez sur la liste Bugs.
Sous l’onglet Outils de liste, cliquez sur Éléments, puis dans la liste déroulante Nouvel élément, cliquez sur Bug Item. L’écran Bugs - New Item apparaît.
Pour créer un bogue, tapez des informations dans les zones concernées, puis cliquez sur Enregistrer.
Ensuite, essayez de supprimer l’élément. Vous devez obtenir un message similaire à celui indiqué dans la figure 1.