Outlook功能区自定义

时间:2012-04-26 09:49:35

标签: visual-c++ outlook ribbon outlook-addin outlook-2010

我在visual studio中使用vc ++在outlook功能区中添加了一个选项卡。但是我需要在outlook 2010中打开特定邮件时隐藏选项卡。 我为此拍了快照 first 第一张图片显示:我添加了自定义标签,当我打开Outlook时它正确加载。 second 现在来要求.. 第二个图像显示:我在Outlook中打开特定邮件时必须隐藏自定义选项卡,我必须在Outlook中添加相同的更多选项

要添加或删除的xml以使其正常工作

帮助正在进行的工作。

谢谢

1 个答案:

答案 0 :(得分:1)

您需要在功能区UI中处理选项卡getVisible事件。

<ribbon>
    <tabs>
        <tab id="MyTab" getVisible="MyTab_GetVisible" label="MyTab">
            <group label="MyGroup" id="MyGroup" >
                <button id="MyButton" size="large" label="MyButton" imageMso="HappyFace" onAction="OnMyButtonClick"/>
            </group>
        </tab>
    </tabs>
</ribbon>

要切换标签可见性,您需要根据需要实施MyTab_GetVisible。请参阅SampleAddin on MSDN for reference

// Only show MyTab when inspector is a read note.
public bool MyTab_GetVisible(Office.IRibbonControl control)
{
    if (control.Context is Outlook.Inspector)
    {
        Outlook.Inspector oInsp = control.Context as Outlook.Inspector;
        if (oInsp.CurrentItem is Outlook.MailItem)
        {
            Outlook.MailItem oMail = oInsp.CurrentItem as Outlook.MailItem;
            return oMail.Sent;
        }
        else
            return false;
    }
    else
        return true;
}