Esempio di gestione dell'interfaccia utente

Aggiornamento: novembre 2007

Nota:

Questo esempio può essere eseguito solo in Microsoft Office Outlook 2007.

In questo esempio viene illustrato come personalizzare l'interfaccia utente (UI) di Microsoft Office Outlook 2007 implementando le interfacce di estensibilità in un componente aggiuntivo. In questo esempio vengono utilizzate le interfacce di estensibilità per creare una personalizzazione della barra multifunzione, un riquadro attività personalizzato e un'area di modulo personalizzata.

Viene inoltre spiegato un modo per coordinare gli elementi dell'interfaccia utente personalizzati per una finestra di controllo specifica. Il codice in questo esempio assicura che la personalizzazione della barra multifunzione, il riquadro attività personalizzato e l'area di modulo personalizzata in un controllo possano comunicare correttamente tra loro. Le comunicazioni dovranno essere isolate dalle altre istanze degli elementi UI personalizzati che possono essere aperti in altri controlli.

Ad esempio, l'utente potrebbe avere molti controlli aperti, ognuno dei quali ha una barra multifunzione personalizzata, un riquadro attività e un'area di modulo. Quando l'utente interagisce con uno di questo elementi, ad esempio facendo clic su un pulsante della barra multifunzione, può provocare una modifica in un altro elemento, ad esempio la disattivazione della visualizzazione del riquadro attività. Il codice deve assicurare che solo gli elementi nel controllo specifico vengano modificati e non altre istanze di questi elementi dell'interfaccia utente personalizzati negli altri controlli.

In questo esempio si utilizza un insieme di classi che eseguono il wrapping degli oggetti riquadro attività personalizzato e controllo per assicurare che venga visualizzato un nuovo riquadro attività con ogni attività e messaggio di posta elettronica aperti dall'utente. L'esempio crea inoltre i pulsanti personalizzati della barra multifunzione che possono essere utilizzati per nascondere o visualizzare il riquadro attività in ogni attività o messaggio di posta elettronica e visualizzare un'area di modulo personalizzata in ogni attività. Per ulteriori informazioni sulla struttura di questo esempio, vedere Componenti dell'esempio di gestione dell'interfaccia utente.

Per informazioni sull'installazione del progetto di esempio nel computer, vedere Procedura: installare e utilizzare i file di esempio presenti nella Guida.

Nota:

Sebbene in questo esempio vengano utilizzate le interfacce di estensibilità per creare una personalizzazione della barra multifunzione, un riquadro attività personalizzato e un'area di modulo, Visual Studio Tools per Office fornisce le classi e le finestre di progettazione che è possibile utilizzare in alternativa. Queste finestre di progettazione e classi aiutano a semplificare il processo di lavoro con queste funzionalità. Per ulteriori informazioni, vedere Finestra di progettazione della barra multifunzione, Cenni preliminari sui riquadri attività personalizzati e Creazione di aree di modulo di Outlook.

Nota sulla sicurezza:

Il codice di esempio che segue è finalizzato alla descrizione di un concetto e ne viene utilizzata e illustrata solo la parte relativa al concetto in questione. È possibile che non soddisfi i requisiti di sicurezza per un ambiente specifico ed è opportuno non utilizzarlo esattamente in questo formato. È consigliabile aggiungere codice di sicurezza e di gestione degli errori per rendere i progetti più sicuri e affidabili. Microsoft fornisce questo codice di esempio "così come è", senza garanzie.

Download sample

Per eseguire l'esempio

  1. Premere F5.

  2. Creare una nuova attività in Outlook.

  3. Fare clic sulla scheda Componenti aggiuntivi sulla barra multifunzione dell'attività.

  4. Nel gruppo UI Manager, fare clic sul pulsante TaskPane.

    Verificare che il riquadro attività SimpleControl venga visualizzato accanto alla finestra dell'attività.

  5. Nel gruppo Show, fare clic sul pulsante UIM.

    Verificare che l'area di modulo personalizzata venga visualizzata nel riquadro di lettura dell'attività aperta. Nell'area di modulo è visualizzato un elenco di chicchi di caffè e una casella di testo contenente il numero di ordini di caffè effettuati.

  6. Selezionare nell'area di modulo uno o più tipi di chicchi di caffè.

    Verificare che ogni tipo di chicco di caffè selezionato venga aggiunto al riquadro attività SimpleControl.

  7. Sulla barra multifunzione, nel gruppo Add-in Services fare clic sul pulsante Invia.

    Verificare che un nuovo messaggio di posta elettronica venga inviato al destinatario someone@example.com e che il messaggio di posta elettronica contenga tutti i tipi di chicchi di caffè selezionati nell'area di modulo.

    Dal momento che il messaggio di posta elettronica rappresenta un ordine di caffè, il numero di ordini posizionati nell'area di modulo viene incrementato.

Requisiti

Per questo esempio sono necessarie le seguenti applicazioni:

  • Visual Studio Tools per Office.

  • Microsoft Office Outlook 2007.

Dimostrazione

In questo esempio vengono illustrati i seguenti concetti:

  • Creazione di una personalizzazione della barra multifunzione implementando l'interfaccia Microsoft.Office.Core.IRibbonExtensibility in un componente aggiuntivo.

  • Creazione di un riquadro attività personalizzato implementando l'interfaccia Microsoft.Office.Core.ICustomTaskPaneConsumer in un componente aggiuntivo.

  • Creazione di un'area di modulo personalizzata implementando l'interfaccia Microsoft.Office.Interop.Outlook.FormRegionStartup in un componente aggiuntivo.

  • Gestione e sincronizzazione della personalizzazione della barra multifunzione, del riquadro attività personalizzato e dell'area di modulo in diversi messaggi di posta elettronica e attività in Outlook.

Componenti dell'esempio di gestione dell'interfaccia utente

La soluzione di esempio include due progetti.

  • Microsoft.Samples.Vsto.UiManager è un progetto di componente aggiuntivo per Outlook. Questo progetto contiene le implementazioni delle interfacce di estensibilità e altre classi e file che supportano queste implementazioni.

  • Microsoft.Samples.Vsto.AddinUtilities è una libreria di classi che include le interfacce e le classi di gestione dell'interfaccia utente utilizzati dal progetto di componente aggiuntivo per Outlook.

Questi progetti forniscono i componenti che implementano il riquadro attività personalizzato, la personalizzazione della barra multifunzione e l'area di modulo nonché anche componenti che consentono di sincronizzare e gestire queste funzionalità.

Componenti di gestione dell'interfaccia utente

Nella tabella seguente sono descritti i file di progetto che forniscono il codice per la personalizzazione della barra multifunzione.

File

Descrizione

ThisAddIn.cs/vb

Contiene l'override del metodo RequestService e del codice che crea un nuovo riquadro attività personalizzato per ogni finestra di controllo. Per ulteriori informazioni sul metodo, vedere Personalizzazione delle funzionalità dell'interfaccia utente utilizzando le interfacce di estensibilità.

UserInterfaceContainer.cs/vb

Definisce la classe UserInterfaceContainer, Ogni oggetto UserInterfaceContainer gestisce l'area di modulo, il riquadro attività e la personalizzazione della barra multifunzione per un solo messaggio di posta elettronica o un'attività.

UserInterfaceElements.cs/vb

Definisce la classe UserInterfaceElements, che gestisce l'insieme di oggetti UserInterfaceContainter utilizzati dal componente aggiuntivo.

IFormRegionControls.cs/vb

IRibbonConnector.cs/vb

Definisce le interfacce che utilizzate da molte classi nei progetti di Microsoft.Samples.Vsto.UiManager e Microsoft.Samples.Vsto.AddinUtilities per comunicare tra loro.

Componenti riquadro attività personalizzato

Nella tabella seguente sono descritti i file di progetto che forniscono il codice per il riquadro attività personalizzato.

File

Descrizione

TaskPaneConnector.cs/vb

Definisce la classe TaskPaneConnector, Questa classe implementa l'interfaccia Microsoft.Office.Core.ICustomTaskPaneConsumer

SimpleControl.cs/vb

Definisce la classe UserControl che fornisce l'interfaccia utente del riquadro attività personalizzato. Questo controllo ha attributi che espongono il controllo a COM.

Componenti barra multifunzione

Nella tabella seguente sono descritti i file di progetto che forniscono il codice per la personalizzazione della barra multifunzione.

File

Descrizione

RibbonConnector.cs/vb

Definisce la classe RibbonConnector, Questa classe implementa l'interfaccia Microsoft.Office.Core.IRibbonExtensibility

SimpleRibbon.xml

TaskRibbon.xml

Contiene le stringhe XML della barra multifunzione restituite dal metodo GetCustomUI dell'implementazione dell'interfaccia Microsoft.Office.Core.IRibbonExtensibility.

Componenti area di modulo

Nella tabella seguente sono descritti i file di progetto che forniscono il codice per l'area di modulo personalizzata visualizzata nei controlli dell'attività.

File

Descrizione

FormRegionConnector.cs/vb

Definisce la classe FormRegionConnector, Questa classe implementa l'interfaccia Microsoft.Office.Interop.Outlook.FormRegionStartup

FormRegionControls.cs/vb

Definisce una classe che gestisce i controlli in ogni istanza dell'area di modulo.

PictureConverter.cs/vb

Converte Image in IPictureDisp che può essere utilizzato per visualizzare un'icona in un'area di modulo.

SimpleFormRegion.ofs

Definisce l'interfaccia utente dell'area di modulo.

SimpleFormRegion.xml

Contiene il manifesto per l'area di modulo.

SimpleFormRegion.reg

Crea le voci del Registro di sistema richieste per caricare l'area di modulo.

Vedere anche

Attività

Esempio Task Pane Demo

Concetti

Personalizzazione delle funzionalità dell'interfaccia utente utilizzando le interfacce di estensibilità

Finestra di progettazione della barra multifunzione

Cenni preliminari sui riquadri attività personalizzati

Gestione dei riquadri attività personalizzati in più finestre dell'applicazione

Altre risorse

Esempi a livello di documento