Procedura dettagliata: automazione di un'applicazione da un riquadro attività personalizzato

Questa procedura dettagliata descrive come creare un riquadro attività personalizzato per automatizzare PowerPoint. Il riquadro attività personalizzato inserisce date in una diapositiva quando l'utente fa clic su un controllo MonthCalendar contenuto nel riquadro.

Si applica a: le informazioni fornite in questo argomento sono valide per i progetti a livello di applicazione per Excel 2007, Excel 2010, InfoPath 2007, InfoPath 2010, Outlook 2007, Outlook 2010, PowerPoint 2007, PowerPoint 2010, Word 2007 e Word 2010. Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazioni di Office.

Sebbene in questa procedura dettagliata si utilizzi specificamente PowerPoint, i concetti illustrati sono applicabili a qualsiasi tipo di applicazione indicato nell'elenco precedente.

Le attività descritte nella procedura sono le seguenti:

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

  • Automazione di PowerPoint dal riquadro attività personalizzato.

  • Visualizzazione del riquadro attività personalizzato in PowerPoint.

Nota

Il computer potrebbe mostrare nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. L'edizione di Visual Studio in uso e le impostazioni utilizzate determinano questi elementi. Per ulteriori informazioni, vedere Gestione delle impostazioni.

Prerequisiti

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

-

Una versione di Visual Studio 2010 che include gli strumenti per sviluppatori di Microsoft Office. Per ulteriori informazioni, vedere [Configurazione di un computer per sviluppare soluzioni Office](bb398242\(v=vs.100\).md).
  • Microsoft Office PowerPoint 2007 o Microsoft PowerPoint 2010.

Creazione del progetto per un componente aggiuntivo

Il primo passaggio consiste nella creazione di un progetto di componente aggiuntivo in PowerPoint.

Per creare un nuovo progetto

  • Creare un progetto relativo al componente aggiuntivo per PowerPoint con il nome MyAddIn utilizzando il modello di progetto per il componente aggiuntivo per PowerPoint. Per ulteriori informazioni, vedere Procedura: creare progetti di Office in Visual Studio.

    In Visual Studio verrà aperto il file di codice ThisAddIn.cs o ThisAddIn.vb e il progetto MyAddIn verrà aggiunto a Esplora soluzioni.

Progettazione dell'interfaccia utente del riquadro attività personalizzato

Non è disponibile alcuna finestra di progettazione visiva per i riquadri attività personalizzati, ma è possibile progettare un controllo utente con il layout desiderato. Più avanti nella procedura dettagliata tale controllo utente verrà aggiunto al riquadro attività personalizzato.

Per progettare l'interfaccia utente del riquadro attività personalizzato

  1. Scegliere Aggiungi controllo utente dal menu Progetto.

  2. Nella finestra di dialogo Aggiungi nuovo elemento modificare il nome del controllo utente con MyUserControl e fare clic su Aggiungi.

    Il controllo utente verrà visualizzato nella finestra di progettazione.

  3. Trascinare un controllo MonthCalendar sul controllo utente dalla scheda Controlli comuni della Casella degli strumenti.

    Se il controllo MonthCalendar è più grande dell'area di progettazione del controllo utente, ridimensionare il controllo utente in modo da adattarlo al controllo MonthCalendar.

Automazione di PowerPoint dal riquadro attività personalizzato

Lo scopo del componente aggiuntivo è quello di inserire una data selezionata nella prima diapositiva della presentazione attiva. Utilizzare l'evento DateChanged del controllo per aggiungere la data selezionata ogni volta che cambia.

Per automatizzare PowerPoint dal riquadro attività personalizzato

  1. Nella finestra di progettazione fare doppio clic sul controllo MonthCalendar.

    Verrà aperto il file MyUserControl.cs o MyUserControl.vb e verrà creato il gestore eventi per l'evento DateChanged.

  2. Aggiungere all'inizio del file il codice riportato di seguito. Tale codice crea alias per gli spazi dei nomi Microsoft.Office.Core e Microsoft.Office.Interop.PowerPoint.

    Imports Office = Microsoft.Office.Core
    Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
    
    using Office = Microsoft.Office.Core;
    using PowerPoint = Microsoft.Office.Interop.PowerPoint;
    
  3. Aggiungere il codice seguente alla classe MyUserControl. Questo codice dichiara un oggetto Shape come membro di MyUserControl. Nel passaggio successivo Shape verrà utilizzato per aggiungere una casella di testo a una diapositiva della presentazione attiva.

    Private TextBox As PowerPoint.Shape
    
    private PowerPoint.Shape textbox;
    
  4. Sostituire il gestore eventi monthCalendar1_DateChanged con il codice riportato di seguito. Tale codice aggiunge una casella di testo alla prima diapositiva della presentazione attiva e quindi aggiunge la data selezionata alla casella di testo. Il codice utilizza l'oggetto Globals.ThisAddIn per accedere al modello a oggetti di PowerPoint.

    Private Sub MonthCalendar1_DateChanged( _
        ByVal sender As System.Object, _
        ByVal e As System.Windows.Forms.DateRangeEventArgs) _
        Handles MonthCalendar1.DateChanged
    
        Try
            If TextBox IsNot Nothing Then
                TextBox.Delete()
            End If
    
            Dim Slide As PowerPoint.Slide
            Slide = Globals.ThisAddIn.Application.ActivePresentation.Slides(1)
            TextBox = Slide.Shapes.AddTextbox( _
                Office.MsoTextOrientation.msoTextOrientationHorizontal, _
                50, 100, 600, 50)
            TextBox.TextFrame.TextRange.Text = e.Start.ToLongDateString()
            TextBox.TextFrame.TextRange.Font.Size = 48
            TextBox.TextFrame.TextRange.Font.Color.RGB = _
                System.Drawing.Color.DarkViolet.ToArgb()
    
        Catch ex As Exception
            System.Windows.Forms.MessageBox.Show(ex.ToString())
        End Try
    End Sub
    
    private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
    {
        try
        {
            if (textbox != null)
            {
                textbox.Delete();
            }
    
            PowerPoint.Slide slide =
                Globals.ThisAddIn.Application.ActivePresentation.Slides[1];
            textbox = slide.Shapes.AddTextbox(
                Office.MsoTextOrientation.msoTextOrientationHorizontal,
                50, 100, 600, 50);
            textbox.TextFrame.TextRange.Text = e.Start.ToLongDateString();
            textbox.TextFrame.TextRange.Font.Size = 48;
            textbox.TextFrame.TextRange.Font.Color.RGB =
                 Color.DarkViolet.ToArgb();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }
    
  5. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto MyAddIn e quindi scegliere Compila. Verificare che il progetto venga compilato senza errori.

Visualizzazione del riquadro attività personalizzato

Per visualizzare il riquadro attività personalizzato all'avvio del componente aggiuntivo, aggiungere il controllo utente al riquadro nel gestore eventi Startup del componente aggiuntivo.

Per visualizzare il riquadro attività personalizzato

  1. In Esplora soluzioni espandere PowerPoint.

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

  3. Aggiungere il codice seguente alla classe ThisAddIn. Questo codice dichiara istanze dell'oggetto MyUserControl e del riquadro CustomTaskPane come membri della classe ThisAddIn.

    Private myUserControl1 As MyUserControl
    Private myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane
    
    private MyUserControl myUserControl1;
    private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
    
  4. Sostituire il gestore eventi ThisAddIn_Startup con il codice riportato di seguito. Questo codice crea un nuovo riquadro CustomTaskPane aggiungendo l'oggetto MyUserControl all'insieme CustomTaskPanes. Il codice visualizza inoltre il riquadro attività.

    Private Sub ThisAddIn_Startup(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles Me.Startup
    
        myUserControl1 = New MyUserControl
        myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "Calendar")
        myCustomTaskPane.Visible = True
    End Sub
    
    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        myUserControl1 = new MyUserControl();
        myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "Calendar");
        myCustomTaskPane.Visible = true;
    }
    

Test del componente aggiuntivo

Quando si esegue il progetto il sistema apre PowerPoint e il componente aggiuntivo visualizza il riquadro attività personalizzato. Fare clic sul controllo MonthCalendar per eseguire il test del codice.

Per eseguire il test del componente aggiuntivo

  1. Premere F5 per eseguire il progetto.

  2. Verificare che il riquadro attività personalizzato sia visibile.

  3. Fare clic su una data nel controllo MonthCalendar nel riquadro attività.

    La data verrà inserita nella prima diapositiva della presentazione attiva.

Passaggi successivi

Gli argomenti elencati di seguito contengono ulteriori informazioni sulla creazione di riquadri attività personalizzati:

Vedere anche

Attività

Procedura: aggiungere un riquadro attività personalizzato a un'applicazione

Procedura dettagliata: sincronizzazione di un riquadro attività personalizzato con una barra multifunzione

Procedura dettagliata: visualizzazione dei riquadri attività personalizzati con messaggi di posta elettronica in Outlook

Procedura: visualizzare i riquadri attività personalizzati con messaggi di posta elettronica in Outlook

Concetti

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

Altre risorse

Cenni preliminari sui riquadri attività personalizzati