Freigeben über


Übersicht über benutzerdefinierte Aufgabenbereiche

Aufgabenbereiche sind Bereiche der Benutzeroberfläche, die i. d. R. an eine Seite eines Fensters in einer Microsoft Office-Anwendung angedockt sind. Mit benutzerdefinierten Aufgabenbereichen können Sie einen eigenen Aufgabenbereich erstellen und Benutzern eine vertraute Oberfläche für den Zugriff auf die Features Ihrer Projektmappe zur Verfügung stellen. Die Oberfläche kann beispielsweise Steuerelemente enthalten, die Code zum Ändern von Dokumenten oder zum Anzeigen von Daten aus einer Datenquelle ausführen.

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.

Tipp

Ein benutzerdefinierter Aufgabenbereich ist nicht das gleiche wie der Aktionsbereich. Der Aktionsbereich ist Bestandteil von Anpassungen auf Dokumentebene für Microsoft Office Word und Microsoft Office Excel. Weitere Informationen finden Sie unter Aktionsbereichsübersicht.

Vorteile von benutzerdefinierten Aufgabenbereichen

Mit benutzerdefinierten Aufgabenbereichen können Sie Features in eine vertraute Benutzeroberfläche integrieren. Sie können mit Visual Studio-Tools schnell einen benutzerdefinierten Aufgabenbereich erstellen.

Vertraute Benutzeroberfläche

Benutzer von Anwendungen in Microsoft Office System sind bereits mit der Verwendung von Aufgabenbereichen (z. B. dem Aufgabenbereich Formatvorlagen und Formatierung in Word) vertraut. Das Verhalten von benutzerdefinierten Aufgabenbereichen entspricht dem Verhalten anderer Aufgabenbereiche in Microsoft Office System. Benutzer können benutzerdefinierte Aufgabenbereiche an verschiedene Seiten des Anwendungsfensters andocken oder sie an eine beliebige Position im Fenster ziehen. Sie können ein Add-In erstellen, das mehrere benutzerdefinierte Aufgabenbereiche gleichzeitig anzeigt, wobei die Benutzer jeden Aufgabenbereich einzeln steuern können.

Windows Forms-Unterstützung

Die Benutzeroberfläche eines benutzerdefinierten Aufgabenbereichs, den Sie mit den Office-Entwicklungstools in Visual Studio erstellen, basiert auf Windows Forms-Steuerelementen. Sie können zum Entwerfen der Benutzeroberfläche für einen benutzerdefinierten Aufgabenbereich den vertrauten Windows Forms-Designer verwenden. Sie können auch die Unterstützung von Datenbindung in Windows Forms nutzen, um eine Datenquelle an Steuerelemente im Aufgabenbereich zu binden.

Erstellen eines benutzerdefinierten Aufgabenbereichs

Ein einfacher benutzerdefinierter Aufgabenbereich kann in zwei Schritten erstellt werden:

  1. Erstellen Sie eine Benutzeroberfläche für den benutzerdefinierten Aufgabenbereich, indem Sie einem UserControl-Objekt Windows Forms-Steuerelemente hinzufügen.

  2. Instanziieren Sie den benutzerdefinierten Aufgabenbereich, indem Sie das Benutzersteuerelement im Add-In an das CustomTaskPaneCollection-Objekt übergeben. Diese Auflistung gibt ein neues CustomTaskPane-Objekt zurück, mit dem Sie die Darstellung des Aufgabenbereichs ändern und auf Benutzerereignisse reagieren können.

Ein Verfahren mit einer Schritt-für-Schritt-Anweisung finden Sie unter Gewusst wie: Hinzufügen eines benutzerdefinierten Aufgabenbereichs zu einer Anwendung.

Erstellen der Benutzeroberfläche

Alle benutzerdefinierten Aufgabenbereiche, die mit den Office-Entwicklungstools in Visual Studio erstellt werden, enthalten ein UserControl-Objekt. Dieses Benutzersteuerelement stellt die Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs bereit. Sie können das Benutzersteuerelement zur Entwurfszeit oder zur Laufzeit erstellen. Wenn Sie das Benutzersteuerelement zur Entwurfszeit erstellen, können Sie die Benutzeroberfläche des Aufgabenbereichs mit dem Windows Forms-Designer entwerfen.

Instanziieren des benutzerdefinierten Aufgabenbereichs

Nachdem Sie ein Benutzersteuerelement erstellt haben, das die Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs enthält, müssen Sie eine CustomTaskPane instanziieren. Übergeben Sie hierfür das Benutzersteuerelement an die CustomTaskPaneCollection im Add-In, indem Sie eine der Add-Methoden aufrufen. Diese Auflistung wird als CustomTaskPanes-Feld der ThisAddIn-Klasse verfügbar gemacht. Das folgende Codebeispiel soll in der ThisAddIn-Klasse ausgeführt werden.

myUserControl1 = New MyUserControl
myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "My Task Pane")
myCustomTaskPane.Visible = True
myUserControl1 = new MyUserControl();
myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "My Task Pane");
myCustomTaskPane.Visible = true;

Die Add-Methoden geben ein neues CustomTaskPane-Objekt zurück. Sie können dieses Objekt verwenden, um die Darstellung des Aufgabenbereichs zu ändern und auf Benutzerereignisse zu reagieren.

Steuern des Aufgabenbereichs in mehreren Fenstern

Benutzerdefinierte Aufgabenbereiche sind einem Dokumentrahmenfenster zugeordnet, das eine Ansicht eines Dokuments oder Elements für den Benutzer enthält. Der Aufgabenbereich ist nur sichtbar, wenn das zugeordnete Fenster sichtbar ist.

Um zu bestimmen, in welchem Fenster der benutzerdefinierte Aufgabenbereich angezeigt wird, verwenden Sie die entsprechende Add-Methodenüberladung beim Erstellen des Aufgabenbereichs:

Wenn mehrere Fenster geöffnet sind, erfordern einige Office-Anwendungen explizite Anweisungen dazu, wann der Aufgabenbereich erstellt oder angezeigt werden soll. Damit ist die Überlegung wichtig, wo der benutzerdefinierte Aufgabenbereich im Code instanziiert werden soll, um sicherzustellen, dass der Aufgabenbereich mit den entsprechenden Dokumenten oder Elementen in der Anwendung angezeigt wird. Weitere Informationen finden Sie unter Verwalten von benutzerdefinierten Aufgabenbereichen in mehreren Anwendungsfenstern.

Zugreifen auf die Anwendung im Aufgabenbereich

Wenn Sie die Anwendung über das Benutzersteuerelement automatisieren möchten, können Sie mithilfe von Globals.ThisAddIn.Application im Code direkt auf das Objektmodell zugreifen. Die statische Globals-Klasse ermöglicht den Zugriff auf das ThisAddIn-Objekt. Das Application-Feld dieses Objekts ist der Einstiegspunkt in das Objektmodell der Anwendung.

Weitere Informationen über das Application-Feld des ThisAddIn-Objekts finden Sie unter Programmieren von Add-Ins auf Anwendungsebene. Eine exemplarische Vorgehensweise, in der das Automatisieren einer Anwendung über einen benutzerdefinierten Aufgabenbereich veranschaulicht wird, finden Sie unter Exemplarische Vorgehensweise: Automatisieren einer Anwendung über einen benutzerdefinierten Aufgabenbereich. Weitere Informationen über die Globals-Klasse finden Sie unter Globaler Zugriff auf Objekte in Office-Projekten.

Verwalten der Benutzeroberfläche des Aufgabenbereichs

Nachdem Sie den Aufgabenbereich erstellt haben, können Sie Eigenschaften und Ereignisse des CustomTaskPane-Objekts verwenden, um die Benutzeroberfläche des Aufgabenbereichs zu steuern und auf Änderungen des Aufgabenbereichs durch Benutzer zu reagieren.

Sichtbarmachen des benutzerdefinierten Aufgabenbereichs

Der Aufgabenbereich ist standardmäßig nicht sichtbar. Um den Aufgabenbereich sichtbar zu machen, müssen Sie die Visible-Eigenschaft auf true festlegen.

Benutzer können einen Aufgabenbereich jederzeit durch Klicken auf die Schaltfläche Schließen (X) in der Ecke des Aufgabenbereichs schließen. Es gibt jedoch kein Standardverfahren für das erneute Öffnen des benutzerdefinierten Aufgabenbereichs durch die Benutzer. Wenn ein Benutzer einen benutzerdefinierten Aufgabenbereich schließt, kann dieser Benutzer den benutzerdefinierten Aufgabenbereich nur erneut anzeigen, wenn Sie ein Verfahren zum Anzeigen des Aufgabenbereichs bereitstellen.

Wenn Sie im Add-In einen benutzerdefinierten Aufgabenbereich erstellen, sollten Sie auch ein Benutzeroberflächenelement, z. B. eine Schaltfläche, erstellen, auf das Benutzer klicken können, um den benutzerdefinierten Aufgabenbereich anzuzeigen oder auszublenden. Wenn Sie einen benutzerdefinierten Aufgabenbereich in einer Microsoft Office-Anwendung erstellen, die das Anpassen des Menübands unterstützt, können Sie dem Menüband ein benutzerdefiniertes Steuerelement mit einer Schaltfläche hinzufügen, über die der benutzerdefinierte Aufgabenbereich angezeigt und ausgeblendet wird. Eine exemplarische Vorgehensweise zur Veranschaulichung finden Sie unter Exemplarische Vorgehensweise: Synchronisieren eines benutzerdefinierten Aufgabenbereichs mit einer Multifunktionsleistenschaltfläche.

Wenn Sie einen benutzerdefinierten Aufgabenbereich in einer Microsoft Office-Anwendung erstellen, die das Anpassen des Menübands nicht unterstützt, können Sie einen CommandBarButton hinzufügen, mit dem der benutzerdefinierte Aufgabenbereich angezeigt und ausgeblendet wird.

Ändern der Darstellung des Aufgabenbereichs

Die Größe und Position eines benutzerdefinierten Aufgabenbereichs können mithilfe der Eigenschaften des CustomTaskPane-Objekts gesteuert werden. Mit Eigenschaften des UserControl-Objekts, das im benutzerdefinierten Aufgabenbereich enthalten ist, können Sie weitere Änderungen an der Darstellung eines benutzerdefinierten Aufgabenbereichs vornehmen. Beispielsweise können Sie mit der BackgroundImage-Eigenschaft des Benutzersteuerelements ein Hintergrundbild für einen benutzerdefinierten Aufgabenbereich angeben.

In der folgenden Tabelle werden die Änderungen aufgelistet, die Sie mithilfe von CustomTaskPane-Eigenschaften an einem benutzerdefinierten Aufgabenbereich vornehmen können.

Aufgabe

Eigenschaft

So ändern Sie die Größe des Aufgabenbereichs

Height

Width

So ändern Sie die Position des Aufgabenbereichs

DockPosition

So blenden Sie den Aufgabenbereich aus oder machen ihn sichtbar

Visible

So verhindern Sie das Ändern der Position des Aufgabenbereichs durch Benutzer

DockPositionRestrict

Programmieren von Ereignissen des benutzerdefinierten Aufgabenbereichs

Sie können festlegen, dass das Add-In auf Änderungen des benutzerdefinierten Aufgabenbereichs durch den Benutzer reagiert. Wenn der Benutzer beispielsweise die Ausrichtung des Bereichs von vertikal in horizontal ändert, sollen möglicherweise die Steuerelemente neu positioniert werden.

In der folgenden Tabelle sind die Ereignisse aufgeführt, die Sie behandeln können, um auf Änderungen von Benutzern am benutzerdefinierten Aufgabenbereich zu reagieren.

Aufgabe

Ereignis

Reagieren auf Änderungen der Position des Aufgabenbereichs durch Benutzer

DockPositionChanged

Reagieren auf das Ausblenden oder Sichtbarmachen des Aufgabenbereichs durch Benutzer

VisibleChanged

Bereinigen von vom Aufgabenbereich verwendeten Ressourcen

Nachdem Sie einen benutzerdefinierten Aufgabenbereich erstellt haben, bleibt das CustomTaskPane-Objekt so lange im Arbeitsspeicher, wie das Add-In ausgeführt wird. Das Objekt bleibt selbst dann im Arbeitsspeicher, wenn der Benutzer auf die Schaltfläche Schließen (X) in der Ecke des Aufgabenbereichs klickt.

Um vom Aufgabenbereich verwendete Ressourcen zu bereinigen, während das Add-In noch ausgeführt wird, verwenden Sie die Methoden Remove oder RemoveAt. Diese Methoden entfernen das angegebene CustomTaskPane-Objekt aus der CustomTaskPanes-Auflistung und rufen die Dispose()-Methode des Objekts auf.

Die Visual Studio Tools for Office-Laufzeit bereinigt automatisch Ressourcen, die vom benutzerdefinierten Aufgabenbereich verwendet werden, wenn das Add-In entladen wird. Rufen Sie die Methoden Remove oder RemoveAt im ThisAddIn_Shutdown-Ereignishandler in Ihrem Projekt nicht auf. Diese Methoden lösen eine ObjectDisposedException aus, da die Visual Studio Tools for Office-Laufzeit Ressourcen bereinigt, die vom CustomTaskPane-Objekt verwendet werden, bevor ThisAddIn_Shutdown aufgerufen wird. Weitere Informationen zu ThisAddIn_Shutdown finden Sie unter Ereignisse in Office-Projekten.

Siehe auch

Aufgaben

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

Exemplarische Vorgehensweise: Automatisieren einer Anwendung über einen benutzerdefinierten Aufgabenbereich

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

Verwalten von benutzerdefinierten Aufgabenbereichen in mehreren Anwendungsfenstern