VSTO:我如何将mailitem作为表格投射?

时间:2016-06-23 09:17:18

标签: outlook vsto outlook-addin

如果我有一个Outlook.MailItem,我如何获得它的位置,宽度和高度?

此外,我需要“禁用”整个Outlook.MailItem表单 - 我该怎么做?

我想在这个MailItem上显示一个居中的“模态”对话框(只是一个Windows.Forms.Form),而不是它实际上是模态的。

由于

更新(更多解释)......

当用户点击邮件上的“发送”时,我想在发送之前检查大文件,如果文件太大,那么我想显示“文件太大,你想要压缩吗?他们“对话。该对话框必须以邮件形式为中心,并禁用邮件表单(如对话框),而不会冻结Outlook。

2 个答案:

答案 0 :(得分:0)

无需在Outlook中禁用默认表单。

例如,在Inspector中打开父对象的实例时触发的MailItem类的Open事件。传递给事件处理程序的Cancel参数允许中止默认操作。如果事件过程将此参数设置为True,则打开操作未完成,并且不显示检查器。 发生此事件时,Inspector对象已初始化但尚未显示。 Open事件与Read事件的不同之处在于,只要用户选择支持单元格编辑的视图中的项目以及在检查器中打开项目时,就会发生读取。

您也可以考虑使用Outlook表单区域。 Replacement-all布局允许覆盖整个检查器窗口。有关详细信息,请参阅Creating Outlook Form Regions

答案 1 :(得分:0)

为什么你需要对表单做任何事情?处理Application.ItemSend事件,必要时显示提示,并在需要时取消提交过程。