2011-07-08 82 views
4

我有一个Outlook 2010插件,我试图创建一个自定义上下文菜单项。每当用户在邮件正文中并右键单击时,我想让我的插件对所选文本执行一些操作。我有一个功能区栏,已经有我想要的操作,但我不知道如何实际创建上下文菜单项。我发现了一些MailItems的教程,但它们似乎并没有在邮件正文中起作用。我不想使用IContextMenuDisplay,因为它已被弃用。如何在消息中添加Outlook VSTO 2010上下文菜单?

任何人都可以协助吗?

我发现:

http://www.developerzen.com/2005/04/04/adding-a-button-to-outlooks-context-menu/ http://weblogs.asp.net/avnerk/archive/2007/01/03/vsto-for-outlook-2007-building-the-add-in -Part-2.aspx http://www.roelvanlisdonk.nl/?p=1184

编辑:我已经意识到,邮件正文使用Word右键菜单,这是可能的话?

回答

5

将此用作您的自定义上下文菜单xml。 我很困惑,因为邮件正文所需的idMso是ContextMenuText, 而不是那些处理outlook mailitems的邮件。

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui"> 
<contextMenus> 
<contextMenu idMso="ContextMenuText"> 
    <button idMso="FontDialog" visible="false" /> 
    <toggleButton id="MyToggle" label="My Toggle Button" /> 
    <button id="MyButton" label="My Button" insertBeforeMso="HyperlinkInsert" onAction="GetButtonID" /> 
    <menuSeparator id="MySeparator" /> 
    <menu id="MySubMenu" label="My Submenu" > 
    <button id="MyButton2" label="Button on submenu" /> 
    </menu> 
    <gallery id="galleryOne" label="My Gallery"> 
    <item id="item1" imageMso="HappyFace" /> 
    <item id="item2" imageMso="HappyFace" /> 
    <item id="item3" imageMso="HappyFace" /> 
    <item id="item4" imageMso="HappyFace" /> 
    </gallery> 
    <dynamicMenu id="MyDynamicMenu" label= "My Dynamic Menu" getContent="GetMyContent" /> 
</contextMenu> 
</contextMenus> 
</customUI> 
+1

我在这里挣扎了好几天,谢谢你解锁我! – Sanket

+1

这对我也很有帮助^ _ ^谢谢!你知道你在哪里可以找到关于所有上下文菜单和它们各自的idMso的更多信息吗?在MSDN下钻,但一直未能找到他们:) – Vintharas

+1

对不起,我不再在这个项目上工作,但祝你好运! –

相关问题