Ribbon: creare comandi personalizzati utilizzando icone di comandi esistenti
Nel post precedente (Tutorial sulla personalizzazione del Ribbon) abbiamo creato il comando Converti in valori, assegnando come icona quella che che il file Ribbon.XML propone per default: HappyFace

Certo sarebbe più opportuno assegnare un’icona diversa, scegliendone magari una attinente tra quelle assegnate ai comandi dell’applicazione; nel nostro caso, potrebbe essere adeguata quella del comando Incolla Valori.
Ma dove reperire l’identificativo di tali icone?
La risposta è data da l ControlID del comando, che corrisponde anche al nome dell’immagine che utilizza.
Tale ControlID si può rilevare all’interno della finestra Personalizza del menù Home:
Menù Home -> Excel Option -> Customize -> selezionare il gruppo di comandi Home -> spostare il mouse sul comando Incolla Valori e leggere il toolt tip che riporta, nell’ordine:
- Il nome del menù in cui si trova il comando: Home
- Il nome del gruppo: Clipboard
- Il nome del controllo: Paste Values
- Il ControlId (nelle parentesi): PasteValues

A questo punto, non ci resta che sostituire questo dato con quello relativo alla faccina che ride nel file di configurazione del Ribbon, e cioè:
imageMso="PasteValues”
al posto di
imageMso=“HappyFace”
Il file Ribbon1.XML verrebbe così modificato:
C# e VB
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="OnLoad">
<ribbon>
<tabs>
<tab idMso="TabAddIns"
<group id="MyGroup"
label="My group">
<toggleButton id="toggleButton1"
size="large"
label="My Button"
screentip="My Button Screentip"
onAction="OnToggleButton1"
imageMso="PasteValues" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Il risultato è il seguente:

Che ne dite? Interessante, no?
Se volete provare, non dovete fare altro che scaricare le applicazioni di esempio allegate al post precedente e verificare con questa e con altre icone.
Buon lavoro a tutti e a presto
Laura