Condividi tramite


Cenni preliminari sulla barra multifunzione

Aggiornamento: novembre 2007

Si applica a

Le informazioni contenute in questo argomento riguardano solo i progetti Visual Studio Tools per Office e le versioni di Microsoft Office specificati.

Tipo di progetto

  • Progetti a livello di documento

  • Progetti a livello di applicazione

Versione Microsoft Office

  • Excel 2007

  • Word 2007

  • Outlook 2007

  • PowerPoint 2007

Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazione.

In Microsoft Office System 2007 è stato introdotto un elemento di interfaccia utente denominato barra multifunzione. È possibile utilizzare Visual Studio Tools per Office per personalizzare la barra multifunzione delle seguenti applicazioni:

  • Microsoft Office Excel 2007

  • Microsoft Office Outlook 2007

  • Microsoft Office PowerPoint 2007

  • Microsoft Office Word 2007

Informazioni sulla barra multifunzione di Microsoft Office System

La barra multifunzione rappresenta uno strumento per organizzare i comandi correlati in modo da facilitarne l'individuazione. Su tale barra i comandi vengono visualizzati come controlli. I controlli sono organizzati in gruppi disposti lungo una striscia orizzontale all'estremità superiore della finestra di un'applicazione. I gruppi correlati sono organizzati in schede.

La maggior parte delle funzionalità, a cui si accedeva mediante i menu e le barre degli strumenti nelle versioni precedenti di Microsoft Office System, è ora accessibile mediante la barra multifunzione. Per ulteriori informazioni, vedere l'articolo tecnico Developer Overview of the User Interface for the 2007 Microsoft Office System (informazioni in lingua inglese).

Personalizzazione della barra multifunzione di Microsoft Office

Per personalizzare la barra multifunzione, aggiungere uno dei seguenti elementi della barra al progetto Visual Studio Tools per Office:

  • Barra multifunzione (finestra di progettazione visiva)

  • Barra multifunzione (XML)

Ad esempio, per personalizzare la barra multifunzione di Excel, aggiungere un elemento di tale barra a un progetto di componente aggiuntivo per Excel.

Elemento Barra multifunzione (finestra di progettazione visiva)

L'elemento Barra multifunzione (finestra di progettazione visiva) fornisce strumenti avanzati che semplificano la progettazione e lo sviluppo di una barra multifunzione personalizzata. Utilizzare l'elemento Barra multifunzione (finestra di progettazione visiva) per personalizzare la barra multifunzione nei modi seguenti:

  • Aggiunta di schede personalizzate o incorporate a una barra multifunzione.

  • Aggiunta di gruppi personalizzati a una scheda personalizzata o incorporata.

    Nota:

    Una scheda o un gruppo incorporato rappresentano una scheda o un gruppo già presenti sulla barra multifunzione di un'applicazione Microsoft Office. Ad esempio, la scheda Dati è una scheda incorporata in Excel. Il gruppo Connessioni è un gruppo incorporato nella scheda Dati.

  • Aggiunta di controlli personalizzati a un gruppo personalizzato.

  • Aggiunta di controlli personalizzati al menu Microsoft Office.

Per ulteriori informazioni su come personalizzare una barra multifunzione utilizzando l'elemento Barra multifunzione (finestra di progettazione visiva), vedere Finestra di progettazione della barra multifunzione.

Elemento Barra multifunzione (XML)

Utilizzare l'elemento Barra multifunzione (XML) se si desidera personalizzare la barra multifunzione in un modo non supportato dall'elemento Barra multifunzione (finestra di progettazione visiva). Utilizzare l'elemento Barra multifunzione (XML) per personalizzare la barra multifunzione nei modi seguenti:

  • Aggiunta di gruppi incorporati a una scheda personalizzata o incorporata.

  • Aggiunta di controlli incorporati a un gruppo personalizzato.

  • Aggiunta di codice personalizzato per eseguire l'override dei gestori eventi dei controlli incorporati.

  • Personalizzazione della barra di accesso rapido.

  • Condivisione di una personalizzazione della barra multifunzione tra diversi componenti aggiuntivi utilizzando un ID completo.

Per ulteriori informazioni su come personalizzare la barra multifunzione utilizzando l'elemento Barra multifunzione (XML), vedere Elemento XML della barra multifunzione.

Esportazione di una barra multifunzione dalla finestra di progettazione nel file XML della barra

Se si crea una barra multifunzione utilizzando la relativa finestra di progettazione e si decide quindi di personalizzare la barra in modi non supportati dall'elemento Barra multifunzione (finestra di progettazione visiva), è possibile esportare la barra multifunzione in XML.

In Visual Studio Tools per Office viene creato automaticamente un elemento Barra multifunzione (XML) e il file XML della barra multifunzione viene popolato con elementi e attributi per ogni controllo della barra.

Non tutte le proprietà contenute nella finestra Proprietà della finestra di progettazione della barra multifunzione vengono trasferite nel file XML della barra. Ad esempio, in Visual Studio Tools per Office non viene esportato il valore della proprietà Image o Text. Questo comportamento è dovuto al fatto che, per assegnare un'immagine o impostare il testo di un controllo, è necessario creare un metodo di callback nel file di codice della barra multifunzione del progetto esportato. In Visual Studio Tools per Office i metodi di callback non vengono generati automaticamente nell'ambito del processo di esportazione.

Inoltre, i valori di proprietà predefiniti rimasti invariati non vengono visualizzati nel file XML risultante della barra multifunzione.

Per ulteriori informazioni su come esportare la barra multifunzione in XML, vedere Procedura: esportare una barra multifunzione dalla finestra di progettazione a un elemento XML della barra.

Aggiornamento del codice

Viene aggiunto un nuovo file di codice della barra multifunzione a Esplora soluzioni. Questo file contiene la classe XML della barra multifunzione. È necessario creare metodi di callback nell'area Ribbon Callbacks di questa classe per gestire le azioni dell'utente, ad esempio la selezione di un pulsante. Spostare il codice dai gestori eventi in questi metodi di callback e modificarlo in modo che utilizzi il modello di programmazione Extensibility della barra multifunzione (RibbonX). Per ulteriori informazioni, vedere Elemento XML della barra multifunzione.

È inoltre necessario aggiungere codice alla classe ThisAddIn, ThisWorkbook o ThisDocument che esegue l'override del metodo CreateRibbonExtensibilityObject e restituisce la classe XML della barra multifunzione all'applicazione Office.

Per ulteriori informazioni, vedere Elemento XML della barra multifunzione.

Aggiunta di più elementi della barra multifunzione a un progetto

È possibile aggiungere più elementi della barra multifunzione a un singolo progetto. Questa operazione è utile se si desidera eseguire una delle due attività seguenti:

  • Creazione di barre multifunzione per i controlli Outlook.

    Nota:

    Un controllo rappresenta una finestra che viene aperta quando gli utenti eseguono determinate attività, ad esempio la creazione di un messaggio di posta elettronica.

  • Selezione della barra multifunzione da visualizzare in fase di esecuzione.

Creazione di barre multifunzione per i controlli Outlook

In Outlook la barra multifunzione non viene visualizzata nella finestra principale dell'applicazione, bensì in un controllo. A un progetto di componente aggiuntivo per Outlook è possibile aggiungere una barra multifunzione per ogni controllo. Per ulteriori informazioni, vedere Personalizzazione di una barra multifunzione per Outlook.

Selezione delle barre multifunzione da visualizzare in fase di esecuzione

Poiché un progetto può contenere più barre multifunzione, è possibile selezionare quella da visualizzare in fase di esecuzione.

Per selezionare una barra multifunzione da visualizzare in fase di esecuzione, eseguire l'override del metodo CreateRibbonExtensibilityObject nella classe ThisAddin, ThisWorkbook o ThisDocument del progetto e restituire la barra multifunzione che si desidera visualizzare. Nell'esempio riportato di seguito viene controllato il valore di un campo denominato myCondition e viene restituita la barra multifunzione appropriata.

Nota:

La sintassi utilizzata in questo esempio restituisce una barra multifunzione creata mediante l'elemento Barra multifunzione (finestra di progettazione visiva). La sintassi per la restituzione di una barra multifunzione creata mediante un elemento Barra multifunzione (XML) è leggermente diversa. Per ulteriori informazioni sulla restituzione di un elemento Barra multifunzione (XML), vedere Elemento XML della barra multifunzione.

Protected Overrides Function CreateRibbonExtensibilityObject() As  _
    Microsoft.Office.Core.IRibbonExtensibility
    If myCondition = True Then
        Return New Microsoft.Office.Tools.Ribbon.RibbonManager _
            (New Microsoft.Office.Tools.Ribbon.OfficeRibbon() _
                 {New Ribbon1()})
    Else
        Return New Microsoft.Office.Tools.Ribbon.RibbonManager _
            (New Microsoft.Office.Tools.Ribbon.OfficeRibbon() _
                {New Ribbon2()})
    End If
End Function
    protected override Microsoft.Office.Core.IRibbonExtensibility
CreateRibbonExtensibilityObject()
    {
        if (myCondition == true)
        {
            return new Microsoft.Office.Tools.Ribbon.RibbonManager(
                new Microsoft.Office.Tools.Ribbon.OfficeRibbon[] 
                    { new Ribbon1() });
        }
        else
        {
            return new Microsoft.Office.Tools.Ribbon.RibbonManager(
                new Microsoft.Office.Tools.Ribbon.OfficeRibbon[] 
                    { new Ribbon2() });
        }
    }

Vedere anche

Attività

Esempio di controlli della barra multifunzione

Procedura: esportare una barra multifunzione dalla finestra di progettazione a un elemento XML della barra

Procedura: modificare l'ordine delle schede nella barra multifunzione

Procedura: personalizzare una scheda incorporata

Procedura: personalizzare il menu Microsoft Office

Procedura: iniziare a personalizzare la barra multifunzione

Procedura: visualizzare gli errori dell'interfaccia utente del componente aggiuntivo

Procedura dettagliata: creazione di una scheda personalizzata utilizzando la finestra di progettazione della barra multifunzione

Procedura dettagliata: aggiornamento dei controlli di una barra multifunzione in fase di esecuzione

Procedura dettagliata: creazione di una scheda personalizzata utilizzando l'elemento XML della barra multifunzione

Procedura: aggiungere un'utilità di avvio di finestre di dialogo a un gruppo della barra multifunzione

Concetti

Accesso alla barra multifunzione in fase di esecuzione

Finestra di progettazione della barra multifunzione

Cenni preliminari sul modello a oggetti della barra multifunzione

Elemento XML della barra multifunzione

Personalizzazione di una barra multifunzione per Outlook