I would like to be able to add a button into the outlook ribbon, the idea is that when you access your calendar it would show in the "Home" ribbon. How would I go about doing this, ideas or links?
Thanks.
The main trick in adding to an existing ribbon is that you have to create your own (new) ribbon but set the ControlId property (ribbon designer properties) or the idMso (ribbon xml) to TabHome. The ribbongroups on your ribbon will then be added to the existing Home ribbon.
A complete list of all other ribbon names can be found here
Related
My customer wants to add a button (or menu item) to a right click (context) menu in Outlook 2016+. I've found examples that add items to the ribbon menu, but can't find any examples for the context menu.
My customer describes the activity as browsing to any folder in Outlook, select an item and right click, and then select the custom button to perform an action on that selected mail item. I've got the code written to modify the selected item, I just need the context menu piece.
Below is the example of the menu I want to modify.
Example of Context Menu
Thanks in advance,
Ryan
The Fluent UI is used for customizing context menus in Outlook. For customizing context menus in VSTO add-ins you need to use the ribbon XML markup. The Walkthrough: Create a custom tab by using Ribbon XML explains how to get started. And the Customizing Context Menus in Office 2010 describes the ribbon XML you could use for adding your custom entries for the context menus.
The Extending the User Interface in Outlook 2010 article discusses how to customize the explorer and inspector ribbons, the menus and context menus, and Backstage view in the Outlook UI. It walks through a code sample that illustrates how to customize the ribbon, the context menus, and Backstage view, and examines specific issues that apply to the Outlook UI.
Can I set idMso attributes to button with the ribbon designer?
I'd like to show built-in buttons in my custom tab in PowerPoint VSTO add-in.
You need to deal with Ribbon XML if you need to set the idMso property. Note, you can design your custom UI using the ribbon designer and then export it to the ribbon XML file which can be edited later. See How to: Export a ribbon from the Ribbon Designer to Ribbon XML for more information.
I am developing an Outlook plugin. I have added a ribbon with the ribbon type set to
this.RibbonType = "Microsoft.Outlook.Explorer";
and ControlId is set to TabMail. By default this ribbon shows on the Home tab in Outlook. But when I open an email in a separate window, when I switch to a different tab or when I view attachments, the ribbon does not appear. I also want to show this ribbon on the Message tab and the Attachments tab.
I have explored ways and got answers that refer to creating two ribbons, but that is not a proper solution.
I also followed this link, but with no luck.
The other solution i explored is to call event tabControl_SelectedIndexChanged on tabs to identify the current tab and then setting ribbon properties(ribbontype and ribbon control) run time.
How to do that for ribbon (Visual Designer)? Or I have to convert that into ribbon (xml)? And where to trigger that event?
Any help will be appreciated.
You should create a new Ribbon with ribbonType Microsoft.Outlook.Mail.Read and your controlId TabReadMessage
You need to choose appropriate values for the RibbonType property:
you can select such
List item
Microsoft.Outlook.Mail.Compose or
Microsoft.Outlook.Mail.Read
I have an Outlook add in that was written with Outlook 2010 in mind but I am updating to handle Outlook 2013 correctly. As part of the add in I have included a number of context menu buttons using the IRibbon method.
At this point these new menu items work correctly, however I wish to remove one of the default Outlook contxt menu buttons with right clicking on a mail item or document in a specific folder.
I have tried declaring a GetVisible event for the button in the Ribbon XML but this does not get fired like the GetVisibile calls I have for my new custom added buttons.
If anyone has any hints, tips or experience with disabling one of the default Outlook 2013 context menu options they would be much appreciated.
Having looked into this further, the "Delete" option I was looking to remove was a new addition on 2013, having originally thought the add in I was working with had removed it in 2010.
It shares the same behaviour as the "Delete" button in the main top ribbon and appears to be a menu item that cannot be removed on an item type basis, but you can suppress the behaviour of the button within the add in.
I've got a minimal VSTO Addin for Outlook 2010 with a ribbon. My only goal is to display a ribbon (created via designer) with no functionality. From what little I can tell from MSDN ribbons should just automatically be displayed by default, perhaps with tweaking ControlIdType/CustomId properties for tabs.
Alas, tweaking these properties does nothing -- Outlook loads and displays no tab. A simple message box displayed in the ribbon loader reveals it never is triggered. Additionally, I haven't seen any information resources (tutorials, walkthroughs, overviews, etc..) that say anything about needing to manually tell Outlook to display tabs.
How do I get the tabs displayed?
Is there a good resource other than MSDN that's good for VSTO newbies?
To get your ribbon displayed, on the base ribbon in your code change the RibbonType property to be Microsoft.Outlook.Explorer.
What fixed it for me (without starting a new project), in the Ribbon1.vb ribbon design, I clicked on the the Ribbon1 name above the ribbons 'File' button, in the properties pane, clicked on tabs (collection), under the heading 'Design' I changed the name (from Tab1) to something else.
Clicked ok, tested by clicking F5 and it worked. Hope this helps someone else.