到目前为止,我敢确定您已经听说了一些有关 Visual Studio 2008 的趣闻,它具有一些强大的功能,如支持 LINQ、改进了 Web 开发以及与 Windows Vista 和 SharePoint 紧密集成等等。不过 Visual Studio 2008 真正突出的一个特点是支持 Microsoft Office 解决方案开发。
您也可下载 VSTO Second Edition 开发 Office 2003 应用程序和 2007 Microsoft Office 系统的解决方案。但是,在 Visual Studio 2008 中包含了所有的 VSTO 项目模板。
可以使用 Visual Studio 2008,尤其是 VSTO 3.0 来开发 Microsoft Outlook 自定义,这是本文的内容。我将向您显示用称为窗体区域(可以是现有 Outlook 窗体上的专门区域)的新型窗体开发技术可以做的工作。也将向您显示如何将 Windows Presentation Foundation (WPF) 支持添加到窗体区域,以帮助提高其外观、印象和交互性。
用自定义窗体区域扩展 Outlook 2007
VSTO 3.0 在 Visual Studio 2008 中提供了一个基于 Windows 窗体的设计环境,可用于在一个开发环境中设计和编码新的 Outlook 窗体区域,并为 Outlook 的托管环境带来许多 Windows 窗体的有利条件。例如,可以创建一个连接到 Web 服务的 VSTO 窗体区域,以采集顾客关系管理 (CRM) 数据并在网格中加以显示。甚至可以将一个自定义的“功能区”添加到将托管自定义窗体区域的 Outlook 2007 检查器中,并向其中添加代码,使其与区域中的控件进行交互。
请注意,有四种类型的 Outlook 2007 窗体区域供您使用:
相邻 出现在第一个 Outlook 窗体页面中目标 Outlook 窗体的底部和/或 Outlook 阅读窗格的底部。
单独 向窗体添加新的页面。
替换 它们用窗体区域替换 Outlook 窗体第一个窗体页面中的所有内容(所有现有窗体页面都原地保留)。
全部替换 它们用窗体区域替换 Outlook 窗体的第一个窗体页面中的所有内容,并删除窗体的所有其他窗体页面。
每一个这样的窗体区域都能以有趣的方式丰富 Outlook,这里我主要说明“替换”窗体区域。“替换”窗体区域可用于为自定义消息类创建一个自定义窗体。与为现有 Outlook 消息,如“邮件消息”(IPM.Note)、“联系人”(IPM.Contact) 和“约会”(IPM.Appointment) 类创建的“相邻”和“单独”窗体区域不同,选择“替换”(或“全部替换”)窗体区域时,创建了一个从现有 Outlook 消息类之一派生的自定义消息类。例如,在示例中,我将演示从“邮件消息”类型派生的名为 CustomersSalesData 的自定义消息类,因此其结果是名为 IPM.Note.RecentSales 的消息类。
构建第一个自定义窗体区域
要创建此自定义“替换”窗体区域,使用 Visual Studio 2008 创建一个 Outlook 2007 加载项项目(请参见图 1)。将项目命名为 CustomOFR 并使用默认的项目位置。此时,Visual Studio 创建一个 Outlook 2007 加载项项目外壳。即意味着在构建并部署加载项(将包含自定义的 Outlook 窗体区域)时,Visual Studio 将在加载 Outlook 时自动载入加载项。
创建项目外壳后,继续向它添加一个自定义 Outlook 窗体区域。在“Add New Item”(添加新项目)对话框中选择“Outook Form Region”(Outlook 窗体区域),并将其命名为 SalesData。它调用“新建 Outlook 窗体区域向导”,该向导包含创建“替换”窗体区域的多个步骤。在第一步中,指示是要设计一个新的窗体区域还是要导入一个现有的窗体区域(.ofs 文件)。在本示例中,要创建一个新的窗体区域,因此继续进行并单击“Next”(下一步)。然后要求选择要创建的窗体区域的类型。选择“替换”类型,然后单击“Next”(下一步)。现在为窗体设置一些属性,具体而言,即名称、标题、描述和以及窗体区域的显示模式(请参见图 2)。输入这些信息后,单击“Next”(下一步)。
在最后一步中,要将窗体区域与特定的消息类相关联。如前所述,因为它是“替换”窗体区域,因此必须创建自定义消息类而不是使用 Outlook 附带的常备消息类。请注意,在此例中这一步骤将所有的常备消息类选项都变灰了,并且此步骤唯一可用的字段是对话框底部的自定义消息类文本框(请参见图 3)。在此字段中我已经输入了 IPM.Note.CustomerSalesData,即表示要从 Outlook IPM.Note 消息类类型派生自己的自定义消息类(实际上是创建继承常备“邮件消息”类中所有相同功能的自定义消息类)。
相关专题
- Office技巧专区 (7170篇文章)
- Wlan组网----家庭专题 (4219篇文章)
- WPF的Attached属性 (0次浏览)
- WPF,将颠覆的设计世界? (0次浏览)
- Windows是否已经变成了一个怪物? (0次浏览)
- Windows2008用RODC保证分支机构安全 (0次浏览)
- Windows2008的NLB配置攻略 (0次浏览)
- Windows SharePoint Services 和 SharePoint P (0次浏览)
- Windows Forms中实现统一的数据验证(一) (0次浏览)
- Windows API一日一练:DrawText函数 (0次浏览)
- Win2008初次体验的几个心得 (0次浏览)
- WEB应用数据库访问的优化 (0次浏览)






