I decided (again) to add all code and picture into an article at my English site which is available here: Creating & Deploying Managed COM Add-ins with VSTO 2005 SE – Part II
After that the connection class has been created (Creating and Deploying Managed COM Add-ins with VSTO 2005 SE – Part I) the next step is to implement the IRibbonExtensibility. This can be manually done but MSFT have made available a simple Ribbon wizard. Choose the Ribbon Support from the component list and a class module as well as a XML file is added to the project. Both these files include skeleton code which gives us a platform to start from. In my opinion this is an excellent approach and I hope that MSFT in the next version of VSTO (version 3.0) will develop it further so it becomes a real interactive wizard where the output will be based on various input from the developers.
The most interesting part is that an overriding method, RequestService, is added to the class module. In return this method allow us to work with the external libraries of IRibbonExtensibility, ICustomTaskpaneConsumer and FormRegionStartup. At present only these libraries are supported but in the future we can expect to work with additional libraries. Andrew Whitechapel has recently published a good blogpost on the subject – Low-level support for ICustomTaskpaneConsumer, IRibbonextensibility and FormRegionStartup. In my opinion this is an excellent approach as it gives us an easy access to external libraries and therefore a flexibility situation when working with VSTO based projects.
Working with RibbonX may or may not be difficult but there exist some good resources online that may be of interest to consult:
- pschmid.net forum
- Ken Puls’ Sandbox project
- Jensen Harris – An Office user Interface Blog
- Avenius Gunter – Access 2007
- MSDN – Ribbon Extensibility Overview
When it comes to Ribbon customization I prefer to keep things very simple. Compared with classic CommandBars (CBs) the structure is totaling different. Although MSFT probably will add some additional properties and methods to the Ribbon in coming Office versions it can, per design, never be as flexible as the CBs. In general I believe we all need to think deep on how we view and approach the Ribbon UI. After all, it’s designed for the group of end-users and not for the group of developers.
As for customized images the preferable file format is PNG and I can only agree on that recommendation.
In my next blogpost I will set focus on the part of the project that actually does the end-user’s wanted work.
Kind regards,
Dennis
Really nice code example, Dennis. Great stuff…
I hadn’t seen Peter Schmid’s forum before, it looks excellent. And great to see that you and Ken are moderators there as well. I’m sure I’ll be by often!
:),
Mike
Comment by Mike Rosenblum — January 4, 2007 @ 9:36 pm
Thanks Mike 🙂
Patrick’s forum is indeed a good resource for the RibbonX and I’m pleased to help him to get the forum “up & running”. In addition, I may pick up some good knowledge too.
Kind regards,
Dennis
Comment by Dennis Wallentin — January 4, 2007 @ 11:30 pm
Hi Dennis,
Saw you had a new post up, and dropped in for a look. Thanks for the link! 🙂
Comment by Ken Puls — January 6, 2007 @ 12:30 am
Ken – You’re welcome 🙂
Kind regards,
Dennis
Comment by Dennis Wallentin — January 6, 2007 @ 12:35 am