使用 SharePoint 2010 客户端对象模型生成 WPF 应用程序
SharePoint 2010 中的 Web 开发入门:了解如何创建 Windows Presentation Foundation (WPF) 应用程序,以便使用 SharePoint 2010 客户端对象模型从 SharePoint 网站检索数据。
上次修改时间: 2011年1月27日
适用范围: Office 2010 | SharePoint Foundation 2010 | SharePoint Server 2010 | Visual Studio | Visual Studio 2010
本文内容
创建 WPF 应用程序
创建用户界面
使用客户端对象模型检索列表数据
后续步骤
SharePoint 2010 客户端对象模型为 Microsoft SharePoint 2010 开发人员提供了统一而完整的对象模型,以便从远程客户端访问 SharePoint 网站数据。在本练习中,您将使用新的 SharePoint 2010 客户端对象模型,并创建 Windows Presentation Foundation (WPF) 应用程序来从 SharePoint 网站检索列表数据。若要完成此任务,您必须执行以下操作:
创建 WPF 应用程序
创建用户界面
使用客户端对象模型检索列表数据
创建 WPF 应用程序
在该任务中,您将在 Microsoft Visual Studio 2010 中创建 WPF 应用程序。
创建 WPF 应用程序
若要启动 Visual Studio 2010,请依次单击"开始"菜单、"所有程序"、"Microsoft Visual Studio 2010"和"Microsoft Visual Studio 2010"。
在"文件"菜单上,指向"新建",然后单击"项目"。
在"新建项目"对话框窗口中的"已安装的模板"部分,依次单击"Visual C#"和"Windows"。
从项目项中选择"WPF 应用程序"。
在"名称"框中,键入 CreateWPFAppUsingClientOM,然后单击"确定"。
在解决方案资源管理器中,右键单击"CreateWPFAppUsingClientOM",然后单击"属性"。
在"应用程序"选项卡中,将"目标框架"属性更改为 .NET Framework 4.0。
在解决方案资源管理器中,右键单击"引用",然后单击"添加引用"。切换到"浏览"选项卡。
在"文件名"框中,键入以下路径,然后按 Enter:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI
选择"Microsoft.SharePoint.Client.dll"和"Microsoft.SharePoint.Client.Runtime.dll",然后单击"确定"。
创建用户界面
在该任务中,您需将 ListBox 控件添加到 WPF 网格视图,然后添加代码,以便将功能添加到该控件。
创建用户界面
在解决方案资源管理器中,双击"MainWindow.xaml"打开 XAML 视图。
在 Grid 元素中插入以下 XAML 代码。
<ListBox Height="238" Margin="12,11,12,13" Name="ListBox1" Width="254" />
此 XAML 代码可用于创建您将在"设计"视图中看到的新 ListBox 控件,如图 1 所示。
图 1."设计"视图中的 ListBox
在解决方案资源管理器中,右键单击"MainWindow.xaml",然后单击"查看代码"。
在现有 using 语句后添加以下 using 语句。
using Microsoft.SharePoint.Client; using SP = Microsoft.SharePoint.Client;
在 InitializeComponent() 方法后的 MainWindow 构造函数中插入以下代码。务必将网站 URL 更改为您自己的网站。
ClientContext context = new ClientContext("http://intranet.contoso.com"); Web site = context.Web; context.Load(site, osite => osite.Title); context.ExecuteQuery(); Title = site.Title; ListCollection lists = site.Lists; IEnumerable<SP.List> listsCollection = context.LoadQuery(lists.Include(l => l.Title, l => l.Id)); context.ExecuteQuery(); ListBox1.ItemsSource = listsCollection; ListBox1.DisplayMemberPath = "Title";
此代码可用于执行以下操作:
对 SharePoint 网站创建客户端上下文。
查询该网站中的可用 SharePoint 列表,检索这些列表及其 Title 和 Id 属性。
将列表集合绑定到 WPF ListBox 控件。
使用客户端对象模型检索列表数据
在该任务中,您将运行此应用程序,并观察结果。
测试项目
按"F5"启动此应用程序。
现在,您将看到应用程序窗口和 ListBox 控件,后者填充有 SharePoint 列表,如图 2 所示。
图 2. 包括 SharePoint 列表的 ListBox 控件
关闭应用程序窗口。