Outlook のリボンのカスタマイズ
更新 : 2007 年 11 月
対象 |
---|
このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。 プロジェクトの種類
Microsoft Office のバージョン
詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。 |
Microsoft Office Outlook 2007 でリボンをカスタマイズする場合、アプリケーションのどこにカスタム リボンを表示するかを検討する必要があります。Outlook では、メイン アプリケーションのユーザー インターフェイス (UI) にリボンは表示されません。Outlook では、ユーザーが電子メール メッセージの作成など、特定のタスクを実行したときにウィンドウが開き、リボンが表示されます。これらのアプリケーション ウィンドウをインスペクタと呼びます。
リボンのインスペクタへの割り当て
カスタマイズするインスペクタを指定するには、該当のインスペクタのメッセージ クラスに対応するリボンの種類を指定します。リボンの種類を指定する手順は、リボン デザイナを使用するか、リボン XML を使用するかによって異なります。
リボン デザイナの使用
リボン (ビジュアル デザイナ) 項目を使用する場合は、[プロパティ] ウィンドウでリボンの [RibbonType] プロパティをクリックし、値の一覧から 1 つまたは複数のリボン ID を選択します。
1 つのプロジェクトに複数のリボンを追加することができます。複数のリボンで 1 つのリボン ID を共有する場合は、プロジェクトの ThisAddin クラスの CreateRibbonExtensibilityObject メソッドをオーバーライドし、実行時に表示するリボンを指定します。
詳細については、「リボンの概要」を参照してください。
それぞれのリボンの種類の詳細については、技術文書「Customizing the Ribbon in Outlook 2007」を参照してください。
リボン XML の使用
リボン (XML) 項目を使用する場合は、Microsoft.Office.Core.IRibbonExtensibility.GetCustomUI メソッドの ribbonID パラメータの値を調べて、適切なリボンを返します。
Microsoft.Office.Core.IRibbonExtensibility.GetCustomUI メソッドは、Visual Studio Tools for Office によってリボン コード ファイルに自動的に生成されます。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;
}