Freigeben über


Exemplarische Vorgehensweise: Automatisieren einer Anwendung über einen benutzerdefinierten Aufgabenbereich

Aktualisiert: November 2007

Betrifft

Die Informationen in diesem Thema gelten nur für die angegebenen Visual Studio Tools for Office-Projekte und Microsoft Office-Anwendungen.

Projekttyp

  • Projekte auf Anwendungsebene

Microsoft Office-Anwendung

  • Excel 2007

  • InfoPath 2007

  • Outlook 2007

  • PowerPoint 2007

  • Word 2007

Weitere Informationen hierzu finden Sie unter Verfügbare Features nach Anwendung und Projekttyp.

In dieser exemplarischen Vorgehensweise wird veranschaulicht, wie ein benutzerdefinierter Aufgabenbereich erstellt wird, der PowerPoint automatisiert. Der benutzerdefinierte Aufgabenbereich fügt Daten in eine Folie ein, wenn der Benutzer auf ein MonthCalendar-Steuerelement klickt, das sich im benutzerdefinierten Aufgabenbereich befindet.

Obwohl in dieser exemplarischen Vorgehensweise speziell PowerPoint verwendet wird, gelten die Konzepte in dieser exemplarischen Vorgehensweise für alle oben aufgelisteten Anwendungen.

In dieser exemplarischen Vorgehensweise werden die folgenden Aufgaben veranschaulicht:

  • Entwerfen der Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs

  • Automatisieren von PowerPoint über den benutzerdefinierten Aufgabenbereich

  • Anzeigen des benutzerdefinierten Aufgabenbereichs in PowerPoint

Hinweis:

Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio, die in den folgenden Anweisungen aufgeführt sind, angezeigt. Die von Ihnen verwendete Visual Studio-Edition und die Einstellungen legen diese Elemente fest. Weitere Informationen hierzu finden Sie unter Visual Studio-Einstellungen.

Vorbereitungsmaßnahmen

Zum Durchführen dieser exemplarischen Vorgehensweise benötigen Sie die folgenden Komponenten:

  • Visual Studio Tools for Office (eine optionale Komponente von Visual Studio 2008 Professional und Visual Studio Team System).

  • Microsoft Office PowerPoint 2007.

Visual Studio Tools for Office wird standardmäßig mit den aufgeführten Versionen von Visual Studio installiert. Wie Sie überprüfen können, ob die Software installiert ist, erfahren Sie in Installieren von Visual Studio Tools for Office.

Erstellen des Add-In-Projekts

Im ersten Schritt erstellen Sie ein Add-In-Projekt für PowerPoint.

So erstellen Sie ein neues Projekt

  • Erstellen Sie ein PowerPoint-Add-In-Projekt mit dem Namen MyAddIn unter Verwendung der PowerPoint-Add-In-Projektvorlage für 2007 Microsoft Office System. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen von Visual Studio Tools for Office-Projekte.

    Visual Studio öffnet die Codedatei ThisAddIn.cs oder ThisAddIn.vb und fügt dem Projektmappen-Explorer das MyAddIn-Projekt hinzu.

Entwerfen der Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs

Es gibt keinen visuellen Designer für benutzerdefinierte Aufgabenbereiche, Sie können aber dennoch ein Benutzersteuerelement mit dem gewünschten Layout entwerfen. Im weiteren Verlauf dieser exemplarischen Vorgehensweise fügen Sie dem benutzerdefinierten Aufgabenbereich das Benutzersteuerelement hinzu.

So entwerfen Sie die Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs

  1. Klicken Sie im Menü Projekt auf Benutzersteuerelement hinzufügen.

  2. Ändern Sie im Dialogfeld Neues Element hinzufügen den Namen des Benutzersteuerelements in MyUserControl, und klicken Sie auf Hinzufügen.

    Das Benutzersteuerelement wird im Designer geöffnet.

  3. Ziehen Sie von der Registerkarte Allgemeine Steuerelemente der Toolbox ein MonthCalendar-Steuerelement auf das Benutzersteuerelement.

    Wenn der Umfang des MonthCalendar-Steuerelements größer als die Entwurfsoberfläche des Benutzersteuerelements ist, passen Sie die Größe des Benutzersteuerelements an das MonthCalendar-Steuerelement an.

Automatisieren von PowerPoint über den benutzerdefinierten Aufgabenbereich

Mit dem Add-In soll in der ersten Folie der aktiven Präsentation ein ausgewähltes Datum eingefügt werden. Verwenden Sie das DateChanged-Ereignis des Steuerelements, um das ausgewählte Datum bei jeder Änderung des Datums hinzuzufügen.

So automatisieren Sie PowerPoint über den benutzerdefinierten Aufgabenbereich

  1. Doppelklicken Sie im Designer auf das MonthCalendar-Steuerelement.

    Die Datei MyUserControl.cs oder MyUserControl.vb wird geöffnet, und der Ereignishandler für das DateChanged-Ereignis wird erstellt.

  2. Fügen Sie am Anfang der Datei folgenden Code hinzu. Mit diesem Code werden Aliase für den Microsoft.Office.Core-Namespace und den Microsoft.Office.Interop.PowerPoint-Namespace erstellt.

    Imports Office = Microsoft.Office.Core
    Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
    
    using Office = Microsoft.Office.Core;
    using PowerPoint = Microsoft.Office.Interop.PowerPoint;
    
  3. Fügen Sie der MyUserControl-Klasse folgenden Code hinzu. Mit diesem Code wird eine Instanz von Microsoft.Office.Interop.PowerPoint.Shape als Member von MyUserControl deklariert. Im nächsten Schritt verwenden Sie diese Microsoft.Office.Interop.PowerPoint.Shape, um einer Folie in der aktiven Präsentation ein Textfeld hinzuzufügen.

    Private TextBox As PowerPoint.Shape
    
    private PowerPoint.Shape textbox;
    
  4. Ersetzen Sie den monthCalendar1_DateChanged-Ereignishandler durch folgenden Code. Mit diesem Code wird in die erste Folie in der aktiven Präsentation ein Textfeld eingefügt, in das anschließend das gegenwärtig ausgewählte Datum eingefügt wird. Im Code wird mithilfe des Globals.ThisAddIn-Objekts auf das PowerPoint-Objektmodell zugegriffen.

    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. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das MyAddIn-Projekt, und klicken Sie dann auf Erstellen. Überprüfen Sie, ob sich das Projekt fehlerfrei erstellen lässt.

Anzeigen des benutzerdefinierten Aufgabenbereichs

Um den benutzerdefinierten Aufgabenbereich beim Starten des Add-Ins anzuzeigen, fügen Sie dem Aufgabenbereich das Benutzersteuerelement im Startup-Ereignishandler des Add-Ins hinzu.

So zeigen Sie den benutzerdefinierten Aufgabenbereich an

  1. Erweitern Sie im Projektmappen-ExplorerPowerPoint.

  2. Klicken Sie mit der rechten Maustaste auf ThisAddIn.cs oder ThisAddIn.vb, und klicken Sie auf Code anzeigen.

  3. Fügen Sie der ThisAddIn-Klasse folgenden Code hinzu. In diesem Code werden Instanzen von MyUserControl und CustomTaskPane als Member der ThisAddIn-Klasse deklariert.

    Private myUserControl1 As MyUserControl
    Private myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane
    
    private MyUserControl myUserControl1;
    private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
    
  4. Ersetzen Sie den ThisAddIn_Startup-Ereignishandler durch folgenden Code. In diesem Code wird ein neues CustomTaskPane-Element erstellt, indem das MyUserControl-Objekt zur CustomTaskPanes-Auflistung hinzugefügt wird. Im Code wird auch der Aufgabenbereich angezeigt.

    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;
    }
    

Testen des Add-Ins

Wenn Sie das Projekt ausführen, wird PowerPoint geöffnet, und das Add-In zeigt den benutzerdefinierten Aufgabenbereich an. Klicken Sie auf das MonthCalendar-Steuerelement, um den Code zu testen.

So testen Sie das Add-In

  1. Drücken Sie F5, um das Projekt auszuführen.

  2. Vergewissern Sie sich, dass der benutzerdefinierte Aufgabenbereich sichtbar ist.

  3. Klicken Sie im MonthCalendar-Steuerelement des Aufgabenbereichs auf ein Datum.

    Das Datum wird in die erste Folie der aktiven Präsentation eingefügt.

Nächste Schritte

Weitere Informationen über das Erstellen von benutzerdefinierten Aufgabenbereichen finden Sie in diesen Themen:

Siehe auch

Aufgaben

Gewusst wie: Hinzufügen eines benutzerdefinierten Aufgabenbereichs zu einer Anwendung

Exemplarische Vorgehensweise: Synchronisieren eines benutzerdefinierten Aufgabenbereichs mit einer Multifunktionsleistenschaltfläche

Exemplarische Vorgehensweise: Anzeigen von benutzerdefinierten Aufgabenbereichen mit E-Mails in Outlook

Gewusst wie: Anzeigen von benutzerdefinierten Aufgabenbereichen mit E-Mails in Outlook

Konzepte

Übersicht über benutzerdefinierte Aufgabenbereiche

Verwalten von benutzerdefinierten Aufgabenbereichen in mehreren Anwendungsfenstern