上次修改时间: 2011年5月6日
适用范围: SharePoint Foundation 2010
本帮助主题演示如何将 JS 网格控件链接到 SharePoint 列表,它是如何:创建基本 JS 网格的后续内容,您将在本主题中创建一个 SharePoint 列表,然后修改在如何:创建基本 JS 网格中创建的网格,以便从该 SharePoint 列表读取数据。
SharePoint 列表由包含数据的项目、行和列或字段组成。Items 属性返回列表中各项的集合,Fields 属性返回列表中各字段的集合。若要改进性能,应该使用 GetItem* 方法之一从列表返回经筛选的项目集合。
有关 SPList 的详细信息,请参阅 SPList。
先决条件
Microsoft SharePoint Foundation 2010
Microsoft Visual Studio 2010
Microsoft Visual Studio 2010 中的 SharePoint 开发工具
备注
尽管不使用 Visual Studio 即可完成本演练,但使用 Visual Studio 2010 和 Visual Studio 2010 中的 SharePoint 开发工具会更轻松。
使用 SharePoint 列表中的数据填充网格
在 SharePoint Foundation 2010 中,创建一个 SharePoint 任务列表。
创建任务列表
在"网站操作"菜单上,选择"其他选项"。
从类型列表中选择"任务"。
将该列表命名为 TaskList。
向列表中添加 4 或 5 条记录。
在 Visual Studio 中,打开 GridData.c。
GridData.c 包含不在 TaskList 列表中的多个字段的定义。删除以下字段定义:
部门经理
部门
年度估计
2009 财年估计
2010 财年估计
复选框
超链接
列的其余列表如下所示。
//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)));
使用以下内容替换为网格字段分配值的代码。
// 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); } } }
备注
务必将 SPSite("https://server/site") 替换为您的服务器和网站信息。
在 Visual Studio 中,按 F5 运行该项目。
TaskList 列表中的数据应显示在 Web 部件中。