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

Microsoft Office Outlook でリボンをカスタマイズする場合、アプリケーションのどこにカスタム リボンを表示するかを検討する必要があります。 Outlook 2010 では、メイン アプリケーション ユーザー インターフェイス (UI: Uuuser Interface) と、ユーザーが電子メール メッセージの作成などの特定のタスクを実行したときに開くウィンドウにリボンが表示されます。 これらのアプリケーション ウィンドウをインスペクターと呼びます。 Outlook 2007 では、リボンはインスペクターのみに表示されます。

ビデオへのリンク 関連のビデオ デモについては、「How Do I: Use the Ribbon Designer to Customize the Ribbon in Outlook? (操作方法: リボン デザイナーを使用して Outlook のリボンをカスタマイズする)」を参照してください。

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

メイン アプリケーション UI へのカスタム リボンの追加

Outlook のメイン アプリケーション UI は、エクスプローラーと呼ばれます。 リボン (ビジュアル デザイナー) 項目を使用する場合は、[プロパティ] ウィンドウでリボンの [RibbonType] プロパティをクリックし、[Microsoft.Outlook.Explorer] を選択することで、エクスプローラーにリボンを追加できます。

リボンのインスペクターへの割り当て

カスタマイズするインスペクターを指定するには、該当のインスペクターのメッセージ クラスに対応するリボンの種類を指定します。

リボン (ビジュアルなデザイナー) 項目を使用する場合は、[プロパティ] ウィンドウでリボンの [RibbonType] プロパティをクリックし、値の一覧から 1 つまたは複数のリボン ID を選択します。

1 つのプロジェクトに複数のリボンを追加することができます。 複数のリボンで 1 つのリボン ID を共有する場合は、プロジェクトの ThisAddin クラスの CreateRibbonExtensibilityObject メソッドをオーバーライドし、実行時に表示するリボンを指定します。 詳細については、「リボンの概要」を参照してください。 それぞれのリボンの種類の詳細については、技術文書「Customizing the Ribbon in Outlook 2007」を参照してください。

リボン XML を使用したリボンの種類の指定

リボン (XML) 項目を使用する場合は、GetCustomUI(String) メソッドの ribbonID パラメーターの値を調べて、適切なリボンを返します。

GetCustomUI(String) メソッドは、Visual Studio によってリボン コード ファイルに自動的に生成されます。 ribbonID パラメーターは、エクスプローラーまたは特定の種類のインスペクターを識別する文字列です。 ribbonID パラメーターに使用できる値の一覧については、技術文書「Customizing the Ribbon in Outlook 2007」を参照してください。

次のコード例は、Microsoft.Outlook.Mail.Compose インスペクターにカスタム リボンのみを表示する方法を示します。 これは、ユーザーが新しい電子メール メッセージを作成したときに表示されるインスペクターです。 表示するリボンは、リボン クラスで生成される GetResourceText() メソッドで指定します。 リボン クラスの詳細については、「リボン XML」を参照してください。

Public Function GetCustomUI(ByVal ribbonID As String) As String _
    Implements Office.IRibbonExtensibility.GetCustomUI

    Dim ribbonXML As String = String.Empty

    If ribbonID = "Microsoft.Outlook.Mail.Compose" Then
        ribbonXML = GetResourceText("Trin_RibbonOutlookBasic.Ribbon1.xml")
    End If

    Return ribbonXML
End Function
public string GetCustomUI(string ribbonID)
{
    string ribbonXML = String.Empty;

    if (ribbonID == "Microsoft.Outlook.Mail.Compose")
    {
        ribbonXML = GetResourceText("Trin_RibbonOutlookBasic.Ribbon1.xml");
    }

    return ribbonXML;
}

参照

概念

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

リボンの概要

リボン デザイナー

リボン XML