Procédure : lier une liste SharePoint au contrôle Grille JS
Dernière modification : vendredi 6 mai 2011
S’applique à : SharePoint Foundation 2010
Cette procédure illustre la liaison d’un Contrôle Grille JS à une liste SharePoint. Dans cette procédure, qui constitue la suite de Procédure : créer une grille JS de base, vous allez créer une liste SharePoint, puis modifier la grille créée dans Procédure : créer une grille JS de base pour lire les données de cette liste SharePoint.
Une liste SharePoint se compose d’éléments, ou de lignes, et de colonnes, ou de champs, qui contiennent des données. La propriété Items retourne la collection d’éléments de la liste, tandis que la propriété Fields retourne la collection de champs de la liste. Pour améliorer les performances, il est conseillé d’utiliser l’une des méthodes GetItem* pour renvoyer une collection filtrée d’éléments à partir de la liste.
Pour plus d’informations sur SPList, voir SPList.
Conditions requises
Microsoft SharePoint Foundation 2010
Microsoft Visual Studio 2010
Outils de développement SharePoint dans Microsoft Visual Studio 2010
Réalisation de Procédure : créer une grille JS de base
Notes
Bien que vous puissiez effectuer cette procédure sans recourir à Visual Studio, sa réalisation sera plus aisée si vous utilisez Visual Studio 2010 et les Outils de développement SharePoint dans Visual Studio 2010.
Pour remplir la grille avec les données d’une liste SharePoint
Dans SharePoint Foundation 2010, créez une liste de tâches SharePoint.
Pour créer une liste de tâches
Dans Actions du site, sélectionnez Autres options.
Sélectionnez Tâches dans la liste de types.
Nommez la liste TaskList.
Ajoutez quatre ou cinq enregistrements à la liste.
Dans Visual Studio, ouvrez GridData.c
GridData.c contient des définitions pour plusieurs champs qui ne figurent pas dans la liste TaskList. Supprimez les définitions de champ suivantes :
Department Manager
Department
Yearly Estimate
FY 2009 Estimate
FY 2010 Estimate
checkbox
Hyperlink
Le reste de la liste de colonnes se présente comme suit.
//Columns which map to the TaskList list. data.Columns.Add(new DataColumn("Key", typeof(Guid))); data.Columns.Add(new DataColumn(GridSerializer.DefaultGridRowStyleIdColumnName, typeof(String))); data.Columns.Add(new DataColumn("HierarchyParentKey", typeof(Guid))); data.Columns.Add(new DataColumn("Title", typeof(string))); data.Columns.Add(new DataColumn("Start Date", typeof(DateTime))); data.Columns.Add(new DataColumn("Due Date", typeof(DateTime))); data.Columns.Add(new DataColumn("Complete Through", typeof(string)));
Remplacez le code qui attribue des valeurs aux champs de la grille par le code suivant.
// Populate the grid with data from the list. // For the sake of simplicity, this sample requests all records from the task list. // In the real world, request only the data you really need. // Replace SPSite("https://server/site") with your server // and site information. using (SPSite mySite = new SPSite("https://server/site")) { using (SPWeb myWeb = mySite.OpenWeb()) { SPList taskList = myWeb.Lists["TaskList"]; DataRow dr; foreach (SPListItem task in taskList.Items) { dr = data.NewRow(); dr["Key"] = task.UniqueId; dr["Title"] = task["Title"].ToString(); dr["Start Date"] = task["Start Date"]; dr["Due Date"] = task["Due Date"]; dr["Complete Through"] = task["% Complete"]; data.Rows.Add(dr); } } }
Notes
Veillez à remplacer SPSite("https://server/site") par vos informations de serveur et de site.
Dans Visual Studio, appuyez sur la touche F5 pour exécuter le projet.
Les données de la liste TaskList doivent être visibles dans le composant WebPart.