当用户单击"新邮件"按钮以编写新邮件时,我正在尝试捕获事件。关于这叫什么有什么建议吗?我一直在到处寻找它,但一切都直接由我阅读邮件选项。
当您创建新的 Outlook 项目时,Visual Studio 会创建FirstOutlookAddIn
项目并在编辑器中打开ThisAddIn
代码文件。
在 ThisAddIn
类中声明名为检查器的字段
Private WithEvents inspectors As Outlook.Inspectors
将 ThisAddIn_Startup
方法替换为以下代码
Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup
inspectors = Me.Application.Inspectors
End Sub
在ThisAddIn
代码文件中,将以下代码添加到 ThisAddIn
类
此代码定义NewInspector
事件的事件处理程序。当用户创建新邮件时,此事件处理程序将文本添加到邮件的主题行和正文中。
Private Sub inspectors_NewInspector(ByVal Inspector As Microsoft.Office.Interop.Outlook.Inspector) Handles inspectors.NewInspector
Dim mailItem As Outlook.MailItem = TryCast(Inspector.CurrentItem, Outlook.MailItem)
If Not (mailItem Is Nothing) Then
If mailItem.EntryID Is Nothing Then
mailItem.Subject = "This text was added by using code"
mailItem.Body = "This text was added by using code"
End If
End If
End Sub
在某些情况下,在 NewInspector 事件中访问 MailItem 还为时过早。 也就是说,您将不会获得有效的邮件项目对象。这就是为什么我建议等待检查器类的第一个激活事件。
您可能会发现 MSDN 中的 Outlook 2010 开发检查器包装器一文很有帮助。