是否可以访问 Ribbon_Load 上的当前 MailItem?

发布于 2024-11-01 23:36:07 字数 765 浏览 5 评论 0原文

我有以下类型的 Outlook 功能区:Microsoft.Outlook.Mail.Compose、Microsoft.Outlook.Mail.Read

我需要根据内容(正文)启用或禁用此功能区中的按钮)的邮件项目,我正在考虑在功能区的加载事件上执行此操作。

我有以下代码,但 ActiveInspector 始终为空。

    private void RiverRaftRibbon_Load(object sender, RibbonUIEventArgs e)
    {
        var application = Globals.ThisAddIn.Application;
        var inspector = application.ActiveInspector();
        MailItem myMailItem = (MailItem)inspector.CurrentItem;

        string projectName;
        DateTime? dueDate;

        if (Common.ParserHelper.IsRiverRaftEmail(mail.HTMLBody, out projectName, out dueDate))
        {
            btnAccept.Enabled = true;
        }
        else
            btnAccept.Enabled = false;

    }

谢谢你!

I have an Outlook ribbon of the following type: Microsoft.Outlook.Mail.Compose, Microsoft.Outlook.Mail.Read

I need to enable or disable a button from this ribbon, based on the content (body) of the mail item, and I was thinking to do this on the ribbon's Load event.

I have the following code, but the ActiveInspector is always null.

    private void RiverRaftRibbon_Load(object sender, RibbonUIEventArgs e)
    {
        var application = Globals.ThisAddIn.Application;
        var inspector = application.ActiveInspector();
        MailItem myMailItem = (MailItem)inspector.CurrentItem;

        string projectName;
        DateTime? dueDate;

        if (Common.ParserHelper.IsRiverRaftEmail(mail.HTMLBody, out projectName, out dueDate))
        {
            btnAccept.Enabled = true;
        }
        else
            btnAccept.Enabled = false;

    }

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

提赋 2024-11-08 23:36:07

试试这个:

var application = Globals.ThisAddIn.Application;
Outlook.Selection selection = application.ActiveExplorer().Selection;
                    mailItem = selection[1] as Outlook.MailItem;

Try this:

var application = Globals.ThisAddIn.Application;
Outlook.Selection selection = application.ActiveExplorer().Selection;
                    mailItem = selection[1] as Outlook.MailItem;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文