好的,您的帖子中有很多问题,我想我有一些答案,但不是全部。无论如何,您的问题中有太多内容,一篇文章无法涵盖所有内容。
首先要知道的是,Outlook 2007 的处理方式与以前的版本不同。因此,您可能需要执行两次才能同时使用 Outlook 2003 和 2007。
首先要知道的是有助于搜索所需内容的词汇表。在 Outlook 2003 中,您将使用自定义表单来创建或扩展表单。在 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。
优点 :
- 微软推荐,所以几乎所有关于自定义 Outlook 2007 的资源都使用这种方法。
- Outlook 的现成控件(例如用于保存邮件地址的字段)。
- 自动绑定到邮件中的 UserProperty。
缺点 :
- 粗鲁的设计师(很难让事情正确对齐)。
- 每当您想要更新您的表单时,您都必须在 Outlook 中对其进行修改,然后在 Visual Studio 中再次上传,这将删除您之前的代码。
- 旧的 COM 控件很难使用。
另一种方法是在 Visual Studio 中设计一个新的 Region Form。
优点 :
- 您拥有所需的所有最新、强大的 winforms 控件。
- 更好的设计师。
- 易于更新。
缺点 :
- 您不会找到太多关于它的信息,因为大多数书籍作者只使用 Outlook 设计器。
- 您将不得不自己编写许多在 Outlook 中认为理所当然的行为(例如,创建一个可以保存和检查多个邮件地址的文本框),这非常痛苦并且可能很难做到。
我认为您可以通过邮件发送自定义表单(至少是在 Outlook 中设计的表单),但我不确定,因为我自己从未尝试过。
至于绑定,您可能可以使用 event.xml 来执行此操作。例如,有些事件会在保存或发送消息之前触发。
这就是现在的全部内容,我希望我的冗长回答不会偏离主题,并且它可以帮助您准确确定您想要做什么。您应该对 Outlook 允许您执行的操作有所了解,然后针对每一点提出更具体的问题。