チュートリアル : リボン デザイナーを使用したカスタム タブの作成

このチュートリアルでは、リボン デザイナーを使用してカスタム リボン タブを作成する方法を示します。リボン デザイナーでは、カスタム タブにコントロールを追加したり、カスタム タブにコントロールを配置したりすることができます。

対象: このトピックの情報は、Excel 2013 と Excel 2010、InfoPath 2013 と InfoPath 2010、Outlook 2013 と Outlook 2010、PowerPoint 2013 と PowerPoint 2010、Project 2013 と Project 2010、Visio 2013 と Visio 2010、および Word 2013 と Word 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。

このチュートリアルでは、次の作業について説明します。

  • 操作ウィンドウの作成.

  • カスタム タブの作成.

  • カスタム タブのボタンによる操作ウィンドウの表示/非表示の切り替え.

[!メモ]

次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。これらの要素は、使用する Visual Studio のエディションとその設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。

必須コンポーネント

このチュートリアルを実行するには、次のコンポーネントが必要です。

-

Microsoft Office Developer Tools が含まれているエディションの Visual Studio 2012。詳細については、「[Office ソリューションを開発できるようにコンピューターを構成する](bb398242\(v=vs.110\).md)」を参照してください。
  • Excel 2010 または Excel 2013。 

ビデオへのリンクこのトピックのビデオ版については、「Video How to: Creating a Custom Tab by Using the Ribbon Designer (ビデオ デモ: リボン デザイナーを使用してカスタム タブを作成する)」を参照してください。関連のビデオ デモについては、「How Do I: Use the Ribbon Designer to Customize the Ribbon in Excel? (操作方法: リボン デザイナーを使用して Excel のリボンをカスタマイズする)」を参照してください。

Excel ブック プロジェクトの作成

すべての Office アプリケーションで、ほぼ同じ手順でリボン デザイナーを操作できます。この例では、Excel ブックを使用します。

Excel ブック プロジェクトを作成するには

  • MyExcelRibbon という名前で Excel ブックのプロジェクトを作成します。詳細については、「方法: Visual Studio で Office プロジェクトを作成する」を参照してください。

    Visual Studioは、デザイナーで新しいブックが開き、**[ソリューション エクスプローラー]**に [MyExcelRibbon] のプロジェクトを追加します。

操作ウィンドウの作成

プロジェクトに 2 つのカスタム操作ウィンドウを追加します。後でカスタム タブにこれらの操作ウィンドウの表示/非表示を切り替えるボタンを追加します。

操作ウィンドウを作成するには

  1. [プロジェクト] メニューの [新しい項目の追加] をクリックします。

  2. [新しい項目の追加] のダイアログ ボックスで、ボックスの **[ActionsPaneControl]**は、を **[追加]**を選択します。

    デザイナーで ActionsPaneControl1.cs ファイルまたは ActionsPaneControl1.vb ファイルが開きます。

  3. ツールボックス[コモン コントロール] タブから、デザイナー画面にラベルを追加します。

  4. [プロパティ] ウィンドウで、label1 の [Text] プロパティを Actions Pane 1 に設定します。

  5. 手順 1. ~ 5. を繰り返して、2 つ目の操作ウィンドウとラベルを作成します。2 番目のラベルの [Text] プロパティは Actions Pane 2 に設定します。

カスタム タブの作成

Office アプリケーションのデザイン ガイドラインの 1 つとして、ユーザーが常に Office アプリケーションの UI を操作できなければならないことがあります。操作ウィンドウにこの機能を追加するには、リボンのカスタム タブから操作ウィンドウの表示/非表示を切り替えるボタンを追加できます。カスタム タブを作成するには、プロジェクトにリボン (ビジュアル デザイナー) 項目を追加します。デザイナーでは、コントロールの追加と配置、コントロールのプロパティの設定、およびコントロール イベントの処理を行うことができます。

カスタム タブを作成するには

  1. [プロジェクト] メニューの [新しい項目の追加] をクリックします。

  2. [新しい項目の追加] ダイアログ ボックスで、[リボン (ビジュアル デザイナー)] をクリックします。

  3. 新しいリボンの名前をに変更し、MyRibbon**[追加]**を選択します。

    リボン デザイナーで MyRibbon.cs ファイルまたは MyRibbon.vb ファイルが開き、既定のタブとグループが表示されます。

  4. リボン デザイナーで、既定のタブをクリックします。

  5. [プロパティ] ウィンドウで、[ControlId] プロパティを展開し、[ControlIdType] プロパティを Custom に設定します。

  6. [ControlId] プロパティを My Custom Tab に設定します。

  7. リボン デザイナーで、**[group1]**を選択します。

  8. [プロパティ] ウィンドウで、[ラベル] を Actions Pane Manager に設定します。

  9. ツールボックス[Office リボン コントロール] タブから、ボタンを group1 にドラッグします。

  10. **[ボタン1]**を選択します。

  11. [プロパティ] ウィンドウで、[ラベル] を Show Actions Pane 1 に設定します。

  12. 2 番目のボタンを group1 に追加し、[ラベル] プロパティを Show Actions Pane 2 に設定します。

  13. ツールボックス[Office リボン コントロール] タブから、ToggleButton コントロールを group1 にドラッグします。

  14. [ラベル] プロパティを Hide Actions Pane に設定します。

カスタム タブのボタンによる操作ウィンドウの表示/非表示の切り替え

最後の手順で、ユーザーに応答するコードを追加します。2 つのボタンの Click イベントと、トグル ボタンの Click イベントのイベント ハンドラーを追加します。操作ウィンドウの非表示にしたり表示を有効にするには、次のコードをイベント ハンドラーに追加します。

カスタム タブのボタンを使用して操作ウィンドウの表示/非表示を切り替えるには

  1. **[ソリューション エクスプローラー]では、MyRibbon.csまたはMyRibbon.vbのショートカット メニューを開き、[コードの表示]**を選択します。

  2. MyRibbon クラスの先頭に、次のコードを追加します。このコードにより、操作ウィンドウ オブジェクトが 2 つ作成されます。

    Dim actionsPane1 As New ActionsPaneControl1()
    Dim actionsPane2 As New ActionsPaneControl2()
    
    ActionsPaneControl1 actionsPane1 = new ActionsPaneControl1();
    ActionsPaneControl2 actionsPane2 = new ActionsPaneControl2();
    
  3. MyRibbon_Load メソッドを次のコードに置き換えます。このコードにより、ActionsPane.Controls コレクションに操作ウィンドウ オブジェクトが追加され、オブジェクトが非表示になります。Visual C#コードは複数のリボン コントロール イベントにデリゲートをアタッチします。

    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;
    
        this.button1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.button1_Click);
        this.button2.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.button2_Click);
        this.toggleButton1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.toggleButton1_Click);
    
    
    }
    
  4. MyRibbon クラスに、次の 3 つのイベント ハンドラー メソッドを追加します。これらのメソッドは、2 つのボタンの Click イベントと、トグル ボタンの Click イベントを処理します。button1 と button2 のイベント ハンドラーにより、別の操作ウィンドウが表示されます。toggleButton1 のイベント ハンドラーにより、アクティブな操作ウィンドウの表示/非表示が切り替えられます。

    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()
        ToggleButton1.Checked = False
    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()
        ToggleButton1.Checked = False
    
    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();
        toggleButton1.Checked = false;
    }
    
    private void button2_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane1.Hide();
        actionsPane2.Show();
        toggleButton1.Checked = false;
    
    }
    
    private void toggleButton1_Click(object sender, RibbonControlEventArgs e)
    {
        if (toggleButton1.Checked == true)
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
        }
        else
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        }
    
    }
    

カスタム タブのテスト

プロジェクトを実行すると、Excelを起動して、[My Custom Tab] のタブがリボンに表示されます。操作ウィンドウの表示/非表示にするに [My Custom Tab] のボタンをクリックします。

カスタム タブをテストするには

  1. F5 キーを押してプロジェクトを実行します。

  2. [My Custom Tab] のタブをクリックします。

  3. [Custom Actions Pane Manager] のグループで、**[Show Actions Pane 1]**を選択します。

    操作ウィンドウが表示され、Actions Pane 1 というラベルが表示されます。

  4. **[Show Actions Pane 2]**を選択します。

    操作ウィンドウが表示され、Actions Pane 2 というラベルが表示されます。

  5. **[Hide Actions Pane]**を選択します。

    操作ウィンドウが表示されなくなります。

次の手順

Office UI をカスタマイズする方法の詳細については、次のトピックで説明します。

参照

処理手順

方法 : リボンのカスタマイズの概要

方法: リボンのタブの位置を変更する

方法 : 組み込みタブをカスタマイズする

方法: Backstage ビューにコントロールを追加する

概念

実行時のリボンへのアクセス

リボン デザイナー

Outlook のリボンのカスタマイズ

リボン オブジェクト モデルの概要

その他の技術情報

リボンの概要