【问题标题】:Outlook AddIn: showing popup while dragging mail in OutlookOutlook 插件:在 Outlook 中拖动邮件时显示弹出窗口
【发布时间】:2017-11-14 03:30:41
【问题描述】:

我有一个 Outlook 插件,它在发送邮件后显示一个弹出窗口,询问用户他/她是否要保存邮件。 问题是当邮件添加到已发送文件夹时会显示此弹出窗口。 因此,当您发送邮件并立即开始将邮件拖到另一个文件夹时,例如,您想清理邮件,然后当您处于拖动过程中时会显示弹出窗口,这会停止拖动并使带有问题的弹出窗口对鼠标无响应。

有没有办法解决这个问题?

提前致谢!

将邮件添加到已发送文件夹的事件在 Ribbon Load 方法中设置:

        private void CodexRibbon_Load(object sender, RibbonUIEventArgs e)
    {
        if (!Globals.ThisAddIn.FirstLoadComplete)
        {
            Messenger.Default.Register<object>(this, ItemSend);
            Globals.ThisAddIn.FirstLoadComplete = true;
        }
    }

问题如下:

        private void ItemSend(object item)
    {
        if (MessageBox.Show(@" Wilt u de zojuist verzonden e-mail opslaan?", @"Opslaan in Codex", MessageBoxButtons.YesNo) == DialogResult.Yes)
            ShowSaveWindow(item);
    }

【问题讨论】:

    标签: c# wpf outlook


    【解决方案1】:

    我不认为有办法找出控件是否在DoDragDrop Windows API 函数中(您可以对其进行修补,并在进入原始函数之前让修补版本设置某种全局标志,但我认为这在 .Net 中不是一个好主意)。

    尝试在Application.ItemSendevent 处理程序中显示消息框,以某种方式标记消息(用户属性?),然后在没有消息框的情况下在Items.ItemAdd 中进行处理。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多