Exemplarische Vorgehensweise: Automatisieren einer Anwendung über einen benutzerdefinierten Aufgabenbereich
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.
Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Anwendungsebene für die folgenden Anwendungen: Excel 2007 und Excel 2010, InfoPath 2007 und InfoPath 2010, Outlook 2007 und Outlook 2010, PowerPoint 2007 und PowerPoint 2010, Word 2007 und Word 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.
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
Tipp
Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio angezeigt als die in den folgenden Anweisungen aufgeführten. Die von Ihnen verwendete Visual Studio-Edition und die Einstellungen legen diese Elemente fest. Weitere Informationen finden Sie unter Arbeiten mit Einstellungen.
Vorbereitungsmaßnahmen
Zum Durchführen dieser exemplarischen Vorgehensweise benötigen Sie die folgenden Komponenten:
-
Eine Version von Visual Studio 2010, die die Microsoft Office-Entwicklungstools einschließt. Weitere Informationen finden Sie unter [Konfigurieren eines Computers zum Entwickeln von Office-Lösungen](bb398242\(v=vs.100\).md).
- Microsoft Office PowerPoint 2007 oder Microsoft PowerPoint 2010.
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 mithilfe der PowerPoint-Add-In-Projektvorlage ein PowerPoint-Add-In-Projekt mit dem Namen "MyAddIn". Weitere Informationen finden Sie unter Gewusst wie: Erstellen von Office-Projekten in Visual Studio.
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
Klicken Sie im Menü Projekt auf Benutzersteuerelement hinzufügen.
Ä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.
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
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.
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;
Fügen Sie der MyUserControl-Klasse den folgenden Code hinzu. Durch diesen Code wird ein Shape-Objekt als Member von MyUserControl deklariert. Im nächsten Schritt verwenden Sie diese Shape, um einer Folie in der aktiven Präsentation ein Textfeld hinzuzufügen.
Private TextBox As PowerPoint.Shape
private PowerPoint.Shape textbox;
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()); } }
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
Erweitern Sie im Projektmappen-Explorer PowerPoint.
Klicken Sie mit der rechten Maustaste auf ThisAddIn.cs oder ThisAddIn.vb, und klicken Sie auf Code anzeigen.
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;
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
Drücken Sie F5, um das Projekt auszuführen.
Vergewissern Sie sich, dass der benutzerdefinierte Aufgabenbereich sichtbar ist.
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:
Erstellen eines benutzerdefinierten Aufgabenbereichs in einem Add-In für eine andere Anwendung. Weitere Informationen über die Anwendungen, die benutzerdefinierte Aufgabenbereiche unterstützen, finden Sie unter Übersicht über benutzerdefinierte Aufgabenbereiche.
Erstellen einer Menübandschaltfläche, mit der ein benutzerdefinierter Aufgabenbereich ausgeblendet oder angezeigt werden kann. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Synchronisieren eines benutzerdefinierten Aufgabenbereichs mit einer Multifunktionsleistenschaltfläche.
Erstellen eines benutzerdefinierten Aufgabenbereichs für jede E-Mail, die in Outlook geöffnet wird. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Anzeigen von benutzerdefinierten Aufgabenbereichen mit E-Mails in Outlook.
Siehe auch
Aufgaben
Gewusst wie: Hinzufügen eines benutzerdefinierten Aufgabenbereichs zu einer Anwendung
Gewusst wie: Anzeigen von benutzerdefinierten Aufgabenbereichen mit E-Mails in Outlook
Konzepte
Verwalten von benutzerdefinierten Aufgabenbereichen in mehreren Anwendungsfenstern