Procedura dettagliata: Sincronizzare un riquadro attività personalizzato con un pulsante della barra multifunzione

Questa procedura dettagliata illustra come creare un riquadro attività personalizzato che gli utenti possono nascondere o visualizzare facendo clic su un pulsante di attivazione/disattivazione sulla barra multifunzione. È consigliabile creare sempre un elemento dell'interfaccia utente, ad esempio un pulsante, che gli utenti possono usare per visualizzare o nascondere il riquadro attività personalizzato, perché le applicazioni di Microsoft Office non forniscono una modalità predefinita per visualizzare o nascondere i riquadri attività personalizzati.

Si applica a: le informazioni contenute in questo argomento si applicano ai progetti di componente aggiuntivo VSTO per Outlook. Per altre informazioni, vedere Funzionalità disponibili per app Office lication e tipo di progetto.

Benché questa procedura dettagliata usi Excel in modo specifico, i concetti illustrati sono applicabili a tutte le applicazioni elencate in precedenza.

In questa procedura dettagliata sono illustrati i task seguenti:

  • Progettazione dell'interfaccia utente del riquadro attività personalizzato.

  • Aggiunta di un interruttore alla barra multifunzione.

  • Sincronizzazione dell'interruttore con il riquadro attività personalizzato.

Nota

I nomi o i percorsi visualizzati per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti potrebbero essere diversi nel computer in uso. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per altre informazioni, vedere Personalizzare l'IDE di Visual Studio.

Prerequisiti

Per completare questa procedura dettagliata, è necessario disporre dei componenti seguenti:

Creare il progetto di componente aggiuntivo

In questo passaggio verrà creato un progetto di componente aggiuntivo VSTO per Excel.

Per creare un nuovo progetto

  1. Creare un progetto di componente aggiuntivo per Excel con il nome SynchronizeTaskPaneAndRibbon, usando il modello di progetto di componente aggiuntivo per Excel. Per altre informazioni, vedere Procedura: Creare progetti di Office in Visual Studio.

    Visual Studio apre il file di codice ThisAddIn.cs o ThisAddIn.vb e aggiunge il progetto SynchronizeTaskPaneAndRibbon a Esplora soluzioni.

Aggiungere un interruttore alla barra multifunzione

Per la progettazione di applicazioni di Office, è necessario che gli utenti abbiano sempre il controllo dell'interfaccia utente dell'applicazione di Office. Per permettere agli utenti di controllare il riquadro attività personalizzato, è possibile aggiungere un interruttore della barra multifunzione che consente di visualizzare e nascondere il riquadro attività. Per creare un interruttore, aggiungere un elemento Barra multifunzione (finestra di progettazione visiva) al progetto. La finestra di progettazione consente di aggiungere e posizionare controlli, impostarne le proprietà e gestirne gli eventi. Per altre informazioni, vedere Progettazione della barra multifunzione.

Per aggiungere un interruttore alla barra multifunzione

  1. Dal menu Progetto fare clic su Aggiungi nuovo elemento.

  2. Nella finestra di dialogo Aggiungi nuovo elemento selezionare Barra multifunzione (finestra di progettazione visiva).

  3. Modificare il nome della nuova barra multifunzione in ManageTaskPaneRibbone fare clic su Aggiungi.

    Il file ManageTaskPaneRibbon.cs o ManageTaskPaneRibbon.vb si apre nella finestra di progettazione della barra multifunzione e visualizza una scheda e un gruppo predefiniti.

  4. Nella finestra di progettazione della barra multifunzione fare clic su group1.

  5. Nella finestra Proprietà impostare la proprietà Label su Task Pane Manager.

  6. Nella scheda Controlli barra multifunzione di Office della casella degli strumentitrascinare un controllo ToggleButton nel gruppo Task Pane Manager .

  7. Fare clic su toggleButton1.

  8. Nella finestra Proprietà impostare la proprietà Label su Mostra riquadro attività.

Progettare l'interfaccia utente del riquadro attività personalizzato

Non sono presenti finestre di visualizzazione visiva per i riquadri attività personalizzati, ma è possibile progettare un controllo utente con il layout desiderato. Più avanti in questa procedura dettagliata il controllo utente verrà aggiunto al riquadro attività personalizzato.

Per progettare l'interfaccia utente del riquadro attività personalizzato

  1. Nel menu Progetto fare clic su Aggiungi controllo utente.

  2. Nella finestra di dialogo Aggiungi nuovo elemento modificare il nome del controllo utente in TaskPaneControl, quindi fare clic su Aggiungi.

    Il controllo utente viene visualizzato nella finestra di progettazione.

  3. Nella scheda Controlli comuni della casella degli strumentitrascinare un controllo TextBox nel controllo utente.

Creare il riquadro attività personalizzato

Per creare il riquadro attività personalizzato quando viene avviato il componente aggiuntivo VSTO, aggiungere il controllo utente al riquadro attività nel gestore eventi Startup del componente aggiuntivo VSTO. Per impostazione predefinita, il riquadro attività personalizzato non è visibile. Più avanti in questa procedura dettagliata si aggiungerà il codice che visualizzerà o nasconderà il riquadro attività quando l'utente fa clic sul pulsante di attivazione/disattivazione aggiunto alla barra multifunzione.

Per creare il riquadro attività personalizzato

  1. In Esplora soluzioni, espandere Excel.

  2. Fare clic con il pulsante destro del mouse su ThisAddIn.cs o ThisAddIn.vb , quindi scegliere Visualizza codice.

  3. Aggiungere il codice seguente alla classe ThisAddIn . Questo codice dichiara un'istanza di TaskPaneControl come membro di ThisAddIn.

    private TaskPaneControl taskPaneControl1;
    private Microsoft.Office.Tools.CustomTaskPane taskPaneValue;
    
  4. Sostituire il gestore eventi ThisAddIn_Startup con il codice seguente. Questo codice aggiunge l'oggetto TaskPaneControl al campo CustomTaskPanes , ma non visualizza il riquadro attività personalizzato (per impostazione predefinita, la proprietà Visible della classe CustomTaskPane è false). Il codice Visual C# collega anche un gestore eventi all'evento VisibleChanged .

    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        taskPaneControl1 = new TaskPaneControl();
        taskPaneValue = this.CustomTaskPanes.Add(
            taskPaneControl1, "MyCustomTaskPane");
        taskPaneValue.VisibleChanged +=
            new EventHandler(taskPaneValue_VisibleChanged);
    }
    
  5. Aggiungere il seguente metodo alla classe ThisAddIn. Questo metodo gestisce l'evento VisibleChanged . Quando l'utente chiude il riquadro attività facendo clic sul pulsante Chiudi (X), questo metodo aggiorna lo stato dell'interruttore nella barra multifunzione.

    private void taskPaneValue_VisibleChanged(object sender, System.EventArgs e)
    {
        Globals.Ribbons.ManageTaskPaneRibbon.toggleButton1.Checked = 
            taskPaneValue.Visible;
    }
    
  6. Aggiungere la proprietà seguente alla classe ThisAddIn . Questa proprietà espone l'oggetto taskPaneValue privato alle altre classi. Più avanti nella procedura dettagliata verrà aggiunto il codice alla classe MyRibbon che usa questa proprietà.

    public Microsoft.Office.Tools.CustomTaskPane TaskPane
    {
        get
        {
            return taskPaneValue;
        }
    }
    

Nascondere e visualizzare il riquadro attività personalizzato usando l'interruttore

L'ultimo passaggio consiste nell'aggiungere il codice che visualizza o nasconde il riquadro attività personalizzato quando l'utente fa clic sull'interruttore nella barra multifunzione.

Per visualizzare e nascondere il riquadro attività personalizzato con l'interruttore

  1. Nella finestra di progettazione della barra multifunzione fare doppio clic sull'interruttore Mostra riquadro attività .

    Visual Studio genera automaticamente un gestore eventi denominato toggleButton1_Click, che gestisce l'evento Click dell'interruttore. Visual Studio apre anche il file MyRibbon.cs o MyRibbon.vb nell'editor di codice.

  2. Sostituire il gestore eventi toggleButton1_Click con il codice seguente. Quando l'utente fa clic sull'interruttore, il codice visualizza o nasconde il riquadro attività personalizzato a seconda che l'interruttore sia premuto o meno.

    private void toggleButton1_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisAddIn.TaskPane.Visible = ((RibbonToggleButton)sender).Checked;
    }
    

Testare il componente aggiuntivo

Quando si esegue il progetto, Excel viene aperto senza visualizzare il riquadro attività personalizzato. Fare clic sul pulsante toggle sulla barra multifunzione per testare il codice.

Per testare il componente aggiuntivo VSTO

  1. Premere F5 per eseguire il progetto.

    Verificare che Excel venga aperto e che la scheda Componenti aggiuntivi venga visualizzata sulla barra multifunzione.

  2. Fare clic sulla scheda Componenti aggiuntivi sulla barra multifunzione.

  3. Nel gruppo Task Pane Manager fare clic sull'interruttore Mostra riquadro attività .

    Verificare che il riquadro attività venga visualizzato e nascosto alternativamente quando si fa clic sull'interruttore.

  4. Quando il riquadro attività è visibile, fare clic sul pulsante Chiudi (X) nell'angolo del riquadro attività.

    Verificare che l'interruttore non sia premuto.

Passaggi successivi

Per altre informazioni su come creare i riquadri attività personalizzati, vedere gli argomenti seguenti: