Click here to Skip to main content
Rate this: bad
Please Sign up or sign in to vote.
See more: C++ VS2010 VC10.0
I am using VC++ 2010 targeting XP and up and would like to dynamically change the ribbon bar which was created using the ribbon designer:
1) change the ICON when a user clicks on an item and then change it back when clicked again.
2) change the text label when a user clicks on an item and change it back when clicked again.   I can already do for the main ribbon bar but how do I do it for the same item in the quick access toolbar and application button list?
Posted 6-Jan-11 6:56am
Edited 6-Jan-11 10:05am
martin_walter at 24-Jan-11 15:29pm
So you're writing an extension for an office application? If so, which one?
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Well I'm not quite sure, what you're doing, but I'll assume you're writing an office AddIn...
Have a look at msdn.
On that page you will also find links to Office control ID lists, that will help you
to get at and modify builtin controls, to a certain extent, if that's what you're aiming at.
Rate this: bad
Please Sign up or sign in to vote.

Solution 3

I think I have found the answer to my question in the Fluent UI Guidelines for the 2007 Ribbon Design:
They suggest that controls displayed in a group must not change as a result of selection and to disable (gray out), rather than remove them from the group.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Sergey Alexandrovich Kryukov 350
1 Peter Leow 270
2 Zoltán Zörgő 258
3 TheRealSteveJudge 188
4 OriginalGriff 170
0 Sergey Alexandrovich Kryukov 8,963
1 OriginalGriff 6,706
2 Peter Leow 4,167
3 Zoltán Zörgő 3,714
4 Kornfeld Eliyahu Peter 2,525

Advertise | Privacy | Mobile
Web01 | 2.8.150123.1 | Last Updated 7 Feb 2011
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100