Exemplarische Vorgehensweise: Erstellen einer benutzerdefinierten Registerkarte mit dem Multifunktionsleisten-Designer
Aktualisiert: November 2007
Betrifft |
---|
Die Informationen in diesem Thema gelten nur für die angegebenen Visual Studio Tools for Office-Projekte und Versionen von Microsoft Office. Projekttyp
Microsoft Office-Version
Weitere Informationen hierzu finden Sie unter Verfügbare Features nach Anwendung und Projekttyp. |
In dieser exemplarischen Vorgehensweise wird das Erstellen einer benutzerdefinierten Registerkarte für die Multifunktionsleiste mithilfe des Multifunktionsleisten-Designers beschrieben. Mit dem Multifunktionsleisten-Designer können Steuerelemente auf der benutzerdefinierten Registerkarte hinzugefügt und positioniert werden.
In dieser exemplarischen Vorgehensweise werden die folgenden Aufgaben veranschaulicht:
Erstellen von Aktionsbereichen
Erstellen einer benutzerdefinierten Registerkarte
Ausblenden und Anzeigen von Aktionsbereichen mithilfe von Schaltflächen auf der benutzerdefinierten Registerkarte
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 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 Excel 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.
Unter Video How to: Creating a Custom Tab by Using the Ribbon Designer (möglicherweise in englischer Sprache) finden Sie eine Videodemonstration.
Erstellen eines Excel-Arbeitsmappenprojekts
Die Schritte für die Verwendung des Multifunktionsleisten-Designers sind für alle Office-Anwendungen nahezu identisch. In diesem Beispiel wird eine Excel-Arbeitsmappe verwendet.
So erstellen Sie ein Excel-Arbeitsmappenprojekt
Erstellen Sie ein Excel 2007-Arbeitsmappenprojekt mit dem Namen MyExcelRibbon. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen von Visual Studio Tools for Office-Projekte.
Visual Studio öffnet die neue Arbeitsmappe im Designer und fügt das MyExcelRibbon-Projekt dem Projektmappen-Explorer hinzu.
Erstellen von Aktionsbereichen
Fügen Sie dem Projekt zwei benutzerdefinierte Aktionsbereiche hinzu. Später werden der benutzerdefinierten Registerkarte Schaltflächen hinzugefügt, mit denen diese Aktionsbereiche angezeigt und ausgeblendet werden.
So erstellen Sie Aktionsbereiche
Klicken Sie im Menü Projekt auf Neues Element hinzufügen.
Wählen Sie im Dialogfeld Neues Element hinzufügen die Option ActionsPaneControl aus, und klicken Sie dann auf Hinzufügen.
Im Designer wird die Datei ActionsPaneControl1.cs oder die Datei ActionsPaneControl1.vb geöffnet.
Fügen Sie der Oberfläche des Designers auf der Registerkarte Allgemeine Steuerelemente der Toolbox eine Bezeichnung hinzu.
Legen Sie im Fenster Eigenschaften die Text-Eigenschaft von label1 auf Actions Pane 1 fest.
Wiederholen Sie die Schritte 1 bis 5, um einen zweiten Aktionsbereich und eine Bezeichnung zu erstellen. Legen Sie die Text-Eigenschaft der zweiten Bezeichnung auf Actions Pane 2 fest.
Erstellen einer benutzerdefinierten Registerkarte
Eine der Entwurfsrichtlinien für Office-Anwendungen besagt, dass Benutzer immer die Möglichkeit haben sollen, die Benutzeroberfläche von Office-Anwendungen zu steuern. Um diese Funktion für die Aktionsbereiche hinzuzufügen, können Schaltflächen hinzugefügt werden, mit denen jeder Aktionsbereich von einer benutzerdefinierten Registerkarte auf der Multifunktionsleiste angezeigt und ausgeblendet werden kann. Fügen Sie zum Erstellen einer benutzerdefinierten Registerkarte dem Projekt ein Element von Multifunktionsleiste (Visual Designer) hinzu. Der Designer unterstützt Sie beim Hinzufügen und Anordnen von Steuerelementen, Festlegen von Steuerelementeigenschaften und Behandeln von Ereignissen von Steuerelementen.
So erstellen Sie eine benutzerdefinierte Registerkarte
Klicken Sie im Menü Projekt auf Neues Element hinzufügen.
Wählen Sie im Dialogfeld Neues Element hinzufügen das Element Multifunktionsleiste (Visual Designer) aus.
Ändern Sie den Namen der neuen Multifunktionsleiste in MyRibbon, und klicken Sie auf Hinzufügen.
Die Datei MyRibbon.cs oder MyRibbon.vb wird im Multifunktionsleisten-Designer geöffnet. Sie beinhaltet eine standardmäßige Registerkarte und eine Gruppe.
Klicken Sie im Multifunktionsleisten-Designer auf group1.
Legen Sie im Fenster Eigenschaften die Label-Eigenschaft auf Actions Pane Manager fest.
Ziehen Sie von der Registerkarte Steuerelemente für Office-Multifunktionsleisten der Toolbox eine Schaltfläche zu group1.
Klicken Sie auf button1, um sie auszuwählen.
Legen Sie im Fenster Eigenschaften die Label-Eigenschaft auf Show Actions Pane 1 fest.
Fügen Sie group1 eine zweite Schaltfläche hinzu, und legen Sie die Label-Eigenschaft auf Show Actions Pane 2 fest.
Ziehen Sie von der Registerkarte Steuerelemente für Office-Multifunktionsleisten der Toolbox ein ToggleButton-Steuerelement zu group1.
Legen Sie die Label-Eigenschaft auf Hide Actions Pane fest.
Ausblenden und Anzeigen von Aktionsbereichen mithilfe von Schaltflächen auf der benutzerdefinierten Registerkarte
Im letzten Schritt wird Code hinzugefügt, der auf den Benutzer reagiert. Fügen Sie Ereignishandler für die Click-Ereignisse der zwei Schaltflächen und das Click-Ereignis der Umschaltfläche hinzu. Fügen Sie diesen Ereignishandlern Code hinzu, die die Aktionsbereiche ausblenden und anzeigen.
So werden Aktionsbereiche mithilfe von Schaltflächen auf der benutzerdefinierten Registerkarte ausgeblendet und angezeigt
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf MyRibbon.cs oder MyRibbon.vb, und klicken Sie anschließend auf Code anzeigen.
Fügen Sie oben in der MyRibbon-Klasse den folgenden Code hinzu: Mit diesem Code werden zwei Aktionsbereichobjekte erstellt.
Dim actionsPane1 As New ActionsPaneControl1() Dim actionsPane2 As New ActionsPaneControl2()
ActionsPaneControl1 actionsPane1 = new ActionsPaneControl1(); ActionsPaneControl2 actionsPane2 = new ActionsPaneControl2();
In C# müssen die folgenden Ereignishandler dem Konstruktor hinzugefügt werden. Weitere Informationen zum Erstellen von Ereignishandlern finden Sie unter Gewusst wie: Erstellen von Ereignishandlern in Visual Studio Tools for Office.
this.button1.Click += new System.EventHandler <Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs> (this.button1_Click); this.button2.Click += new System.EventHandler <Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs> (this.button2_Click); this.toggleButton1.Click += new System.EventHandler <Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs> (this.toggleButton1_Click); this.Load += new System.EventHandler <Microsoft.Office.Tools.Ribbon.RibbonUIEventArgs> (this.MyRibbon_Load);
Fügen Sie folgenden Code zum MyRibbon_Load-Ereignis hinzu. Mit diesem Code werden die Aktionsbereichsobjekte der Microsoft.Office.Tools.ActionsPane.Controls-Auflistung des Aktionsbereichs hinzugefügt und die Objekte ausgeblendet.
Private Sub MyRibbon_Load(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonUIEventArgs) _ Handles MyBase.Load Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1) Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2) actionsPane1.Hide() actionsPane2.Hide() Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False End Sub
private void MyRibbon_Load(object sender, RibbonUIEventArgs e) { Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1); Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2); actionsPane1.Hide(); actionsPane2.Hide(); Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false; }
Fügen Sie der MyRibbon-Klasse die folgenden drei Ereignishandlermethoden hinzu. Diese Methoden dienen zur Behandlung der Click-Ereignisse der zwei Schaltflächen und des Click-Ereignisses der Umschaltfläche. Die Ereignishandler für button1 und button2 zeigen andere Aktionsbereiche an. Der Ereignishandler für toggleButton1 zeigt den aktiven Aktionsbereich an und blendet diesen aus.
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _ Handles Button1.Click Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True actionsPane2.Hide() actionsPane1.Show() End Sub Private Sub Button2_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _ Handles Button2.Click Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True actionsPane1.Hide() actionsPane2.Show() End Sub Private Sub ToggleButton1_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _ Handles ToggleButton1.Click If ToggleButton1.Checked Then Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False Else Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True End If End Sub
private void button1_Click(object sender, RibbonControlEventArgs e) { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true; actionsPane2.Hide(); actionsPane1.Show(); } private void button2_Click(object sender, RibbonControlEventArgs e) { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true; actionsPane1.Hide(); actionsPane2.Show(); } private void toggleButton1_Click(object sender, RibbonControlEventArgs e) { if (toggleButton1.Checked == true) { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false; } else { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true; } }
Testen der benutzerdefinierten Registerkarte
Beim Ausführen des Projekts wird Excel gestartet, und die Registerkarte Add-Ins wird auf der Multifunktionsleiste angezeigt. Klicken Sie auf die Schaltflächen auf der Registerkarte Add-Ins, um die Aktionsbereiche anzuzeigen und auszublenden.
So testen Sie die benutzerdefinierte Registerkarte
Drücken Sie F5, um das Projekt auszuführen.
Klicken Sie auf die Registerkarte Add-Ins.
Klicken Sie in der Gruppe Custom Actions Pane Manager auf Show Actions Pane 1.
Im daraufhin erscheinenden Aktionsbereich wird die Actions Pane 1-Bezeichnung angezeigt.
Klicken Sie auf Show Actions Pane 2.
Im daraufhin erscheinenden Aktionsbereich wird die Actions Pane 2-Bezeichnung angezeigt.
Klicken Sie auf Hide Actions Pane.
Die Aktionsbereiche werden nicht mehr angezeigt.
Nächste Schritte
Weitere Informationen zum Anpassen der Office-Benutzeroberfläche finden Sie in diesen Themen:
Hinzufügen einer kontextbasierten Benutzeroberfläche zu einer beliebigen Anpassung auf Dokumentebene. Weitere Informationen finden Sie unter Aktionsbereichsübersicht.
Erweitern eines standardmäßigen oder benutzerdefinierten Microsoft Office Outlook-Formulars. Weitere Informationen hierzu finden Sie unter Exemplarische Vorgehensweise: Entwerfen eines Outlook-Formularbereichs.
Siehe auch
Aufgaben
Gewusst wie: Erste Schritte beim Anpassen der Multifunktionsleiste
Gewusst wie: Ändern der Reihenfolge von Registerkarten in der Multifunktionsleiste
Gewusst wie: Anpassen einer integrierten Registerkarte
Gewusst wie: Anpassen des Microsoft Office-Menüs
Konzepte
Zugreifen auf die Multifunktionsleiste zur Laufzeit
Übersicht über die Multifunktionsleiste
Multifunktionsleisten-Designer