我需要开发能够使用从远程服务器下载的选项卡扩展现有表单的 Outlook 扩展。例如,在约会表单中应该出现附加选项卡。此选项卡中的表单定义是从 Web 服务下载并使用 WPF 等方式呈现的。此选项卡的数据也来自服务器,并绑定到表单字段。最后一件事 - 保存表单时,还应该将其提交到此远程服务器。

它应该适用于 Outlook 2003 和 2007。

主要问题是:

  1. 这有可能吗?
  2. 读什么才能更快地掌握它?MSDN 很大,甚至包括 Outlook 开发人员部分。
  3. 有样品吗?

更新

非常感谢您的回答!当然,有太多不同的问题,所以我必须将其分成几个部分。阅读回复并做作业后,我想继续:

  1. 是的,这是可能的。不过也许我稍后会发现一些水下岩石。
  2. 最好的方法是使用 VS 2008 并尝试进行扩展。
有帮助吗?

解决方案

好吧,你的帖子中有很多问题,我想我有一些答案,但不是全部。不管怎样,你的问题涉及的内容太多,一篇文章无法涵盖所有​​内容。

首先要知道的是,Outlook 2007 的操作方式与以前的版本不同。因此,您可能需要执行两次操作才能同时使用 Outlook 2003 和 2007。

首先要了解有助于搜索所需内容的词汇。在 Outlook 2003 中,您将使用自定义表单来创建或扩展表单。在 Outlook 2007 中,您将使用新的表单区域。尽管它们在概念上相似,但它们是两个不同的东西。

由于我只使用过 Outlook 2007,因此我接下来所说的内容仅适用于 Outlook 2007。您需要拥有 Visual Studio 2005 并下载 VSTO(Visual Studio Tools for Office)或 Visual Studio 2008。

表单区域有 4 种类型之一:相邻、分离、替换或全部替换。相邻意味着它显示在默认表单的底部。单独意味着它是表单内的一个新“页面”。Replace 表示替换默认表单的第一页,Replace all 表示替换默认表单的所有页面。

你说你想使用标签。在 Outlook 2007 中,您不应该这样做。您应该使用单独的页面,以尊重 Outlook 2007 中的 UI 原则。您可以创建选项卡,但您会发现它们看起来相当难看。另一方面,功能区中会显示单独的页面,使您可以轻松地从一个页面切换到另一个页面。

您有两种设计表单区域的方法。第一种推荐方式是 Outlook 2007 内部的设计器:例如“工具>表单>创建区域表单”。您可以在其中进行设计,将表单保存为 .ofs 文件,然后将其导入 Visual Studio。

优点 :

  • 由Microsoft推荐,因此几乎所有有关自定义Outlook 2007的资源都使用此方法。
  • Outlook 的现成控件(例如用于保存邮件地址的字段)。
  • 自动绑定到邮件中的 UserProperty。

缺点 :

  • 粗鲁的设计师(很难让事情正确对齐)。
  • 每当您想要更新表单时,您都必须在 Outlook 中对其进行修改,然后在 Visual Studio 中再次上传,这将删除您以前的代码。
  • 旧的 COM 控件很难使用。

另一种方法是在 Visual Studio 中设计一个新的区域窗体。

优点 :

  • 您拥有您想要的所有最新的、强大的 winforms 控件。
  • 更好的设计师。
  • 易于更新。

缺点 :

  • 您不会找到太多有关它的信息,因为大多数书籍作者只使用 Outlook 设计器。
  • 您必须自己编写许多在 Outlook 中视为理所当然的行为(例如,创建一个可以保存和检查多个邮件地址的文本框),这是非常痛苦的,而且可能很难做到。

我认为您可以通过邮件发送自定义表单(至少是在 Outlook 中设计的表单),但我不确定,因为我自己从未尝试过。

至于绑定,您可能可以使用事件来完成此操作。例如,在保存或发送消息之前会触发一些事件。

这就是现在的全部内容,我希望我的长答案不会偏离主题,并且它可以帮助您准确地确定您想要做什么。您应该了解 Outlook 允许您执行哪些操作,然后针对每一点提出更具体的问题。

其他提示

这是不可能的,因为你描述但你可以得到一些方式。此外,Ksempac还指出了很多有关如何在2007年展望中做事的优点和缺点。

为了在2003年和2007年开始运行,我认为最好的方法是设计自己的预约表格。您可以扩展其中一个选项卡以使用浏览器控件来显示Web服务中的动态表单。其结果可以使用新的Outlook表单提交或保存,以便稍后进行渲染/处理。

示例:

表单设计示例: http://www.msexchange.org/articles/Designing-Outlook-表单的Part1.html

覆盖默认表单: http://support.microsoft.com/?kbid=241235

在这里和网上有很多关于设计展望形式的好东西,你可以在这里问各方面。表格上还有几本好书:

Sue Mosher的书籍和网站是一个很好的起点。 Outlookcode.com

Microsoft Outlook编程:适用于管理员,开发人员和高级用户的快速入门 (ISBN 1-555-58286-9,Digital Press)

Microsoft Outlook 2007编程:高级用户和管理员的Jumpstart (ISBN 1-55558-346-6,数字出版社)

作为Ksempac,你很可能需要打破你的问题然后问你去..

更新 如果您有一些预算加载项快速 http://www.add-in-express.com/ 将会消除部署到2版本前景的痛苦,并且您可以比手动操作更快地提高工作效率。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top