如何避免在 Outlook 插件的自定义选项卡中单击按钮时完全刷新

How to avoid complete refresh on button click in custom tab of Outllook Plugin

我是 Add 开发新手。我已经开始使用 VSTO.

进行 Outlook 插件 开发

添加了一个新选项卡并在该选项卡中放置了一个buttton。每当我 单击 按钮时,我都会 发送电子邮件

工作正常。但是,问题是每当我单击按钮时,闪烁整个 outlook 屏幕即完成重新加载。

如何避免这种情况并优雅地进行,这样页面就不会重新加载。

这里是我的代码供大家参考:

public partial class Ribbon1
    {
        private void Ribbon1_Load(object sender, RibbonUIEventArgs e)
        {

        }

        private void button1_Click(object sender, RibbonControlEventArgs e)
        {
            SendAutoNotification();
        }

        public void SendAutoNotification()
        {
            Outlook.MailItem mailItem = (Outlook.MailItem)
                Globals.AutoMailer.Application.CreateItem(Outlook.OlItemType.olMailItem);
            mailItem.Subject = "AutoGeneratedEmail";
            mailItem.To = "xxx.xxx@xxx.com";
            mailItem.Body = "This is just for test purpose. This is an auto generated email from outlook adddin";
            mailItem.Importance = Outlook.OlImportance.olImportanceLow;
            mailItem.Display(false);
            ((Outlook._MailItem)mailItem).Send();
        }
    }

代码中不需要使用MailItemclass的Display方法:

public void SendAutoNotification()
    {
        Outlook.MailItem mailItem = (Outlook.MailItem)
            Globals.AutoMailer.Application.CreateItem(Outlook.OlItemType.olMailItem);
        mailItem.Subject = "AutoGeneratedEmail";
        mailItem.To = "xxx.xxx@xxx.com";
        mailItem.Body = "This is just for test purpose. This is an auto generated email from outlook adddin";
        mailItem.Importance = Outlook.OlImportance.olImportanceLow;
        ((Outlook._MailItem)mailItem).Send();
    }