Office Ribbon buttons and other commands can be "re-purposed" using XML and onAction
method. I have already done that successfully. Is there an equivalent C#/Object Model way of doing it too? Google hasn't shown much promise.
Background: The main Ribbon of my add-in is using visual designer. If I use the XML method of re-purposing, my main Ribbon will not be loaded. Other than this road bump, I'm interested in finding the solution in general too.
After spending some time, I learned that there is no way of doing this from C# code. I must switch to XML Ribbon approach. Fortunately the Visual Designer can help you translate your existing ribbons into XML format. You can right-click the Ribbon in Visual Designer and choose "Convert to XML" command.
I also found that XML Ribbon approach is far more powerful in the sense that it can access Office 2013 and 2016 features that the Visual Designer cannot. For example the Office Backstage and new context menus are only accessible in XML approach.