Freigeben über


Aktionsbereichsübersicht

Wichtig

Das Feature "Aktionen" wurde ab Office 2024 von Microsoft Word eingestellt. Dieses Feature ist nur in Microsoft Word mit den folgenden Versionen von Office verfügbar:

  • Microsoft 365
  • Office LTSC Professional Plus 2021
  • Office LTSC Standard 2021
  • Office Professional Plus 2016, 2019
  • Office Standard 2016, 2019

Ein Aktionsbereich ist ein anpassbarer Aufgabenbereich für Dokumentaktionen , der an ein bestimmtes Microsoft Office Word-Dokument oder eine Microsoft Office Excel-Arbeitsmappe angefügt ist. Der Aktionsbereich wird zusammen mit anderen integrierten Aufgabenbereichen im Office-Aufgabenbereich gehostet, z. B. im Aufgabenbereich "XML-Quelle " in Excel oder im Aufgabenbereich " Formatvorlagen und Formatierung " in Word. Sie können Windows Forms-Steuerelemente oder WPF-Steuerelemente verwenden, um die Benutzeroberfläche des Aktionsbereichs zu entwerfen.

Gilt für: Die Informationen in diesem Thema gelten für Projekte auf Dokumentebene für Excel und Word. Weitere Informationen finden Sie unter Funktionen, die nach Office-Anwendung und Projekttyp verfügbar sind.

Sie können einen Aktionsbereich nur in einer Anpassung auf Dokumentebene für Word oder Excel erstellen. Sie können keinen Aktionsbereich in einem VSTO-Add-In erstellen. Weitere Informationen finden Sie unter Funktionen, die nach Office-Anwendung und Projekttyp verfügbar sind.

Hinweis

Der Aktionsbereich unterscheidet sich von benutzerdefinierten Aufgabenbereichen. Benutzerdefinierte Aufgabenbereiche sind der Anwendung zugeordnet, nicht einem bestimmten Dokument. Sie können benutzerdefinierte Aufgabenbereiche in VSTO-Add-Ins für einige Microsoft Office-Anwendungen erstellen. Weitere Informationen finden Sie unter "Benutzerdefinierte Aufgabenbereiche".

Anzeigen des Aktionsbereichs

Der Aktionsbereich wird durch die ActionsPane Klasse dargestellt. Wenn Sie ein Projekt auf Dokumentebene erstellen, ist eine Instanz dieser Klasse für Ihren Code verfügbar, indem sie das ActionsPane Feld der ThisWorkbook Klasse (für Excel) oder ThisDocument (für Word) in Ihrem Projekt verwenden. Um den Aktionsbereich anzuzeigen, fügen Sie der Controls Eigenschaft des ActionsPane Felds ein Windows Forms-Steuerelement hinzu. Im folgenden Codebeispiel wird dem Aktionsbereich ein Steuerelement hinzugefügt actions .

this.ActionsPane.Controls.Add(actions);

Der Aktionsbereich wird zur Laufzeit sichtbar, sobald Sie ihm explizit ein Steuerelement hinzufügen. Nachdem der Aktionsbereich angezeigt wurde, können Sie Steuerelemente dynamisch als Reaktion auf die Aktionen des Benutzers hinzufügen oder entfernen. In der Regel fügen Sie den Code hinzu, um den Aktionsbereich im Startup Ereignishandler von ThisDocument oder ThisWorkbook so anzuzeigen, dass der Aktionsbereich sichtbar ist, wenn der Benutzer das Dokument zum ersten Mal öffnet. Möglicherweise möchten Sie den Aktionsbereich jedoch nur als Reaktion auf die Aktion eines Benutzers im Dokument anzeigen. Sie können beispielsweise den Code zum Click Ereignis eines Steuerelements im Dokument hinzufügen.

Hinzufügen mehrerer Steuerelemente zum Aktionsbereich

Wenn Sie dem Aktionsbereich mehrere Steuerelemente hinzufügen, sollten Sie die Steuerelemente in einem Benutzersteuerelement gruppieren und dann der Controls Eigenschaft das Benutzersteuerelement hinzufügen. Dieser Vorgang umfasst die folgenden Schritte:

  1. Erstellen Sie die Benutzeroberfläche (UI) des Aktionsbereichs, indem Sie Ihrem Projekt ein Steuerelement für den Aktionsbereich oder ein Benutzersteuerelement hinzufügen. Beide Elemente enthalten eine benutzerdefinierte Windows Forms-Klasse UserControl . Aktionsbereich-Steuerelement und Benutzersteuerelement sind gleich und unterscheiden sich nur in ihrem Namen.

  2. Fügen Sie Windows Forms-Steuerelemente mithilfe des Designers von UserControl hinzu, oder schreiben Sie Code.

    Hinweis

    Sie können dem Aktionsbereich auch WPF-Steuerelemente hinzufügen, indem Sie ein WPF UserControl zu Windows Forms UserControlhinzufügen. Weitere Informationen finden Sie unter Verwenden von WPF-Steuerelementen in Office-Lösungen.

  3. Fügen Sie eine Instanz des benutzerdefinierten Benutzersteuerelements zu den Steuerelementen hinzu, die im ActionsPane Feld der ThisWorkbook Klasse (für Excel) oder ThisDocument (für Word) in Ihrem Projekt enthalten sind.

    Beispiele, die diesen Prozess ausführlicher veranschaulichen, finden Sie unter Vorgehensweise: Hinzufügen eines Aktionsbereichs zu Word-Dokumenten oder Excel-Arbeitsmappen.

Ausblenden des Aktionsbereichs

Obwohl die ActionsPane Klasse über eine Hide Methode und eine Visible Eigenschaft verfügt, können Sie den Aktionsbereich nicht über die Benutzeroberfläche entfernen, indem Sie elemente der ActionsPane Klasse selbst verwenden. Wenn Sie die Hide Methode aufrufen oder die Visible Eigenschaft auf "false " festlegen, werden nur die Steuerelemente im Aktionsbereich ausgeblendet. Der Aufgabenbereich wird nicht ausgeblendet.

Um den Aufgabenbereich in Ihrer Lösung auszublenden, haben Sie mehrere Optionen:

  • Legen Sie für Word die Visible Eigenschaft des TaskPane Objekts fest, das den Aufgabenbereich "Dokumentaktionen" auf "false" darstellt. Das folgende Codebeispiel soll aus der ThisDocument Klasse in Ihrem Projekt ausgeführt werden.

    this.Application.TaskPanes[Word.WdTaskPanes.wdTaskPaneDocumentActions].Visible = false;
    
  • Legen Sie für Excel die DisplayDocumentActionTaskPane Eigenschaft des Application Objekts auf "false" fest. Das folgende Codebeispiel soll aus der ThisWorkbook Klasse in Ihrem Projekt ausgeführt werden.

    this.Application.DisplayDocumentActionTaskPane = false;
    
  • Bei Word oder Excel können Sie alternativ die Visible Eigenschaft der Befehlsleiste festlegen, die den Aufgabenbereich auf "false" darstellt. Das folgende Codebeispiel soll aus der Klasse ThisDocument oder ThisWorkbook in Ihrem Projekt ausgeführt werden.

    this.Application.CommandBars["Task Pane"].Visible = false;
    

Beim Öffnen des Dokuments den Aktionsbereich löschen

Wenn ein Benutzer das Dokument speichert, während der Aktionsbereich sichtbar ist, wird der Aktionsbereich jedes Mal angezeigt, wenn das Dokument geöffnet wird, unabhängig davon, ob der Aktionsbereich Steuerelemente enthält. Wenn Sie steuern möchten, wann es angezeigt wird, rufen Sie die Clear Methode des ActionsPane Felds im Startup Ereignishandler von ThisDocument oder ThisWorkbook um sicherzustellen, dass der Aktionsbereich beim Öffnen des Dokuments nicht sichtbar ist.

Festlegen, wann der Aktionsbereich geschlossen wird

Es gibt kein Ereignis, das beim Schließen des Aktionsbereichs ausgelöst wird. Obwohl die ActionsPane Klasse über ein VisibleChanged Ereignis verfügt, wird dieses Ereignis nicht ausgelöst, wenn der Endbenutzer den Aktionsbereich schließt. Stattdessen wird dieses Ereignis ausgelöst, wenn die Steuerelemente im Aktionsbereich ausgeblendet werden, indem die Hide Methode aufgerufen oder die Visible Eigenschaft auf "false" festgelegt wird.

Wenn der Benutzer den Aktionsbereich schließt, kann der Benutzer ihn erneut anzeigen, indem er eines der folgenden Verfahren auf der Benutzeroberfläche der Anwendung ausführt.

So zeigen Sie den Aktionsbereich mithilfe der Benutzeroberfläche von Word oder Excel an
  1. Klicken Sie im Menüband auf die Registerkarte "Ansicht ".

  2. Klicken Sie in der Gruppe " Einblenden/Ausblenden " auf die Umschaltfläche " Dokumentaktionen ".

Ereignisse im Aktionsbereich des Programms

Sie können dem Aktionsbereich mehrere Benutzersteuerelemente hinzufügen und dann Code schreiben, um auf Ereignisse im Dokument zu reagieren, indem Sie die Benutzersteuerelemente ein- und ausblenden. Wenn Sie Ihrem Dokument XML-Schemaelemente zuordnen, können Sie bestimmte Benutzersteuerelemente im Aktionsbereich anzeigen, wenn sich die Einfügemarke in einem der XML-Elemente befindet. Weitere Informationen finden Sie unter So geht's: Schemas in Word-Dokumente innerhalb Visual Studio einbinden und So geht's: Schemas in Arbeitsblätter innerhalb Visual Studio einbinden.

Sie können auch Code schreiben, um auf die Ereignisse eines beliebigen Objekts zu reagieren, einschließlich Hoststeuerelement, Anwendung oder Dokumentereignissen. Weitere Informationen finden Sie unter Walkthrough: Program Against Events of a NamedRange Control.

Binden von Daten an Steuerelemente in einem Aktionsbereich

Die Steuerelemente im Aktionsbereich verfügen über die gleichen Datenbindungsfunktionen wie Steuerelemente in Windows Forms. Sie können die Steuerelemente an Datenquellen wie Datensätze, typierte Datensätze und XML binden. Weitere Informationen finden Sie unter Datenbindung und Windows Forms.

Sie können Steuerelemente im Aktionsbereich und steuerelemente im Dokument an dasselbe Dataset binden. Sie können beispielsweise eine Master-/Detailbeziehung zwischen den Steuerelementen im Aktionsbereich und den Steuerelementen auf dem Arbeitsblatt erstellen. Weitere Informationen finden Sie unter Walkthrough: Binden von Daten an Steuerelemente in einem Excel-Aktionsbereich.

Überprüfen von Daten in Aktionsbereich-Steuerelementen

Wenn Sie ein Meldungsfeld im Validating Ereignishandler eines Steuerelements im Aktionsbereich anzeigen, wird das Ereignis möglicherweise ein zweites Mal ausgelöst, wenn der Fokus vom Steuerelement in das Meldungsfeld verschoben wird. Um dieses Problem zu verhindern, verwenden Sie ein ErrorProvider Steuerelement, um alle Überprüfungsfehlermeldungen anzuzeigen.

Stapelreihenfolge von Benutzersteuerelementen

Wenn Sie mehrere Benutzersteuerelemente verwenden, können Sie Code schreiben, um die Benutzersteuerelemente im Aktionsbereich ordnungsgemäß zu platzieren, unabhängig davon, ob er vertikal oder horizontal angedockt ist. Sie können die Stapelreihenfolge der Benutzersteuerelemente im Aktionsbereich mithilfe der StackStyle-Enumeration der StackOrder-Eigenschaft festlegen. Weitere Informationen finden Sie unter Gewusst wie: Verwalten des Steuerelementlayouts in Aktionsbereichen.

Die StackOrder Eigenschaft kann die folgenden StackStyle Enumerationswerte annehmen.

Stapelstil Definition
Vonunten Stapelt vom unteren Rand des Aktionsbereichs.
VonLinks Stapelt vom linken Rand des Aktionsbereichs.
VonRechts Stapelt vom rechten Rand des Aktionsbereichs.
VonNach oben Stapelt von oberen Rand des Aktionsbereichs.
Nichts Keine Stapelreihenfolge definiert; die Reihenfolge wird vom Entwickler gesteuert.

Im folgenden Code wird die StackOrder-Eigenschaft festgelegt, um die Benutzersteuerelemente vom oberen Rand des Aktionsbereichs zu stapeln.

this.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromTop;

Verankern von Steuerelementen

Wenn der Benutzer die Größe des Aktionsbereichs zur Laufzeit ändert, können die Steuerelemente sich mit dem Aktionsbereich vergrößern. Sie können die Anchor Eigenschaft eines Windows Forms-Steuerelements verwenden, um Steuerelemente im Aktionsbereich zu verankern. Sie können die Windows Forms-Steuerelemente ebenfalls auf die gleiche Weise am Benutzersteuerelement festlegen. Weitere Informationen finden Sie unter Vorgehensweise: Steuerelemente auf Windows Forms verankern.

Ändern der Größe des Aktionsbereichs

Sie können die Größe eines ActionsPane nicht direkt ändern, da der ActionsPane im Aufgabenbereich eingebettet ist. Sie können die Breite des Aufgabenbereichs jedoch programmgesteuert ändern, indem Sie die Width-Eigenschaft des CommandBar festlegen, die den Aufgabenbereich darstellt. Sie können die Höhe des Aufgabenbereichs ändern, falls er horizontal angedockt oder unverankert ist.

Programmgesteuertes Ändern der Größe des Aufgabenbereichs wird nicht empfohlen, da der Benutzer in der Lage sein sollte, die Größe des Aufgabenbereichs auszuwählen, die ihren Anforderungen am besten entspricht. Wenn Sie jedoch die Breite des Aufgabenbereichs ändern müssen, können Sie den folgenden Code verwenden, um diese Aufgabe zu erreichen.

this.CommandBars["Task Pane"].Width = 200;

Ändern der Position des Aktionsbereichs

Sie können die ActionsPane Position nicht direkt ändern, da sie in den Aufgabenbereich eingebettet ist. Sie können den Aufgabenbereich jedoch programmgesteuert verschieben, indem Sie die Position-Eigenschaft der CommandBar festlegen, die den Aufgabenbereich darstellt.

Die programmgesteuerte Neupositionierung des Aufgabenbereichs wird nicht empfohlen, da der Benutzer die Aufgabenbereichposition auf dem Bildschirm auswählen kann, die den Anforderungen am besten entspricht. Wenn Sie den Aufgabenbereich jedoch an eine bestimmte Position verschieben müssen, können Sie den folgenden Code verwenden, um diese Aufgabe zu erreichen.

this.CommandBars["Task Pane"].Position =
    Microsoft.Office.Core.MsoBarPosition.msoBarLeft;

Hinweis

Endbenutzer können den Aufgabenbereich jederzeit manuell neu positionieren. Es gibt keine Möglichkeit, sicherzustellen, dass der Aufgabenbereich an der Position verankert bleibt, die Sie programmgesteuert angeben. Sie können jedoch prüfen, ob sich die Ausrichtung ändert, und sicherstellen, dass die Steuerelemente im Aktionsbereich in der richtigen Reihenfolge gestapelt sind. Weitere Informationen finden Sie unter Gewusst wie: Verwalten des Steuerelementlayouts in Aktionsbereichen.

Das Festlegen der Top- und Left-Eigenschaften des ActionsPane ändert seine Position nicht, da das ActionsPane-Objekt im Aufgabenbereich eingebettet ist.

Wenn der Aufgabenbereich nicht angedockt ist, können Sie die Top-Eigenschaft und die Left-Eigenschaft von CommandBar festlegen, der den Aufgabenbereich darstellt. Durch den folgenden Code wird ein nicht angedockter Aufgabenbereich in die obere linke Ecke des Dokuments verschoben.

if (this.CommandBars["Task Pane"].Position == 
    Microsoft.Office.Core.MsoBarPosition.msoBarFloating)
{
    this.CommandBars["Task Pane"].Top = 0;
    this.CommandBars["Task Pane"].Left = 0;
}