次の方法で共有


RibbonMenu インターフェイス

定義

[リボン] タブまたは Microsoft Office メニュー上のメニューを表します。

public interface class RibbonMenu : IDisposable, Microsoft::Office::Tools::Ribbon::RibbonControl, System::ComponentModel::IComponent
[System.Runtime.InteropServices.Guid("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")]
public interface RibbonMenu : IDisposable, Microsoft.Office.Tools.Ribbon.RibbonControl, System.ComponentModel.IComponent
[<System.Runtime.InteropServices.Guid("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")>]
type RibbonMenu = interface
    interface RibbonControl
    interface RibbonComponent
    interface IComponent
    interface IDisposable
Public Interface RibbonMenu
Implements IComponent, IDisposable, RibbonControl
属性
実装

次の例では、実行時に既存のメニューにサブメニューを追加して設定する方法を示します。

実行時にコントロールを更新し、Language-Integrated クエリ (LINQ) を使用して AdventureWorks サンプル データベースからデータを取得するより豊富な例については、「 チュートリアル: 実行時にリボンのコントロールを更新する」を参照してください。

このコード例を実行するには、まず次の手順を実行する必要があります。

  1. リボン (Visual Designer) 項目を Office プロジェクトに追加します。

  2. グループをカスタム タブに追加します。

  3. グループにメニューを追加します。

  4. メニューの (Name) プロパティを に CustomerMenu設定します。

  5. メニューの Label プロパティを Customers に設定 します

  6. メニューの Dynamic プロパティを に true設定します。

    これにより、実行時にリボンが Office アプリケーションに読み込まれた後で、メニュー上のコントロールを追加および削除できます。

private void PopulateCustomerMenu()
{
    // Add two sub-menus to EmployeeMenu and populate each sub-menu
    // First sub-menu
    RibbonMenu subMenu1 = this.Factory.CreateRibbonMenu();
    subMenu1.Dynamic = true;
    subMenu1.Label = "A - M";
    subMenu1.Items.Add(this.Factory.CreateRibbonToggleButton());
    ((RibbonToggleButton)subMenu1.Items.Last()).Label = "Hall, Don";
    subMenu1.Items.Add(this.Factory.CreateRibbonToggleButton());
    ((RibbonToggleButton)subMenu1.Items.Last()).Label = "Valdez, Rachel";
    CustomerMenu.Items.Add(subMenu1);

    // Second sub-menu
    RibbonMenu subMenu2 = this.Factory.CreateRibbonMenu();
    subMenu2.Dynamic = true;
    subMenu2.Label = "N - Z";
    subMenu2.Items.Add(this.Factory.CreateRibbonToggleButton());
    ((RibbonToggleButton)subMenu2.Items.Last()).Label = "Robinson, Alex";
    CustomerMenu.Items.Add(subMenu2);
}
Private Sub PopulateCustomerMenu()
    ' Add two sub-menus to EmployeeMenu and populate each sub-menu
    ' First sub-menu
    Dim subMenu1 As RibbonMenu = Me.Factory.CreateRibbonMenu()
    subMenu1.Dynamic = True
    subMenu1.Label = "A - M"
    subMenu1.Items.Add(Me.Factory.CreateRibbonToggleButton())
    CType(subMenu1.Items.Last(), RibbonToggleButton).Label = "Hall, Don"
    subMenu1.Items.Add(Me.Factory.CreateRibbonToggleButton())
    CType(subMenu1.Items.Last(), RibbonToggleButton).Label = "Valdez, Rachel"
    CustomerMenu.Items.Add(subMenu1)

    ' Second sub-menu
    Dim subMenu2 As RibbonMenu = Me.Factory.CreateRibbonMenu()
    subMenu2.Dynamic = True
    subMenu2.Label = "N - Z"
    subMenu2.Items.Add(Me.Factory.CreateRibbonToggleButton())
    CType(subMenu2.Items.Last(), RibbonToggleButton).Label = "Robinson, Alex"
    CustomerMenu.Items.Add(subMenu2)

End Sub

注釈

Visual Studio では、ツールボックスRibbonMenu [Office リボン コントロール] タブからリボン Designerに Menu コントロールをドラッグすると、オブジェクトが作成されます。

オブジェクトの メソッドを RibbonMenu 使用して、実行時に CreateRibbonMenuRibbonFactory 作成できます。

RibbonFactory オブジェクトにアクセスするには、次の 2 つの方法があります。

  • リボン クラスの Factory プロパティの使用。 この方法は、リボン クラス内のコードから使用します。

  • Globals.Factory.GetRibbonFactory メソッドの使用。 この方法は、リボン クラス外のコードから使用します。

一般的なタスク

次の表に、一般的なタスクに役立つメンバーを示します。 これらのタスクはすべて、設計時に実行できます。 これらのタスクの一部は、実行時にリボンが Office アプリケーションに読み込まれる前、または実行時にコントロールが動的メニューに追加される前にのみ実行できます。 詳細については、「 リボン オブジェクト モデルの概要」を参照してください。

タスク メンバー
メニューに画像を表示します。 または ImageName プロパティを使用しますImage

組み込みのリボン コントロールに表示されるイメージを再利用することもできます。 これを行うには、メニューのアイコンとして表示する組み込みの Microsoft Office イメージの ID に設定 OfficeImageId します。
メニューのサイズを変更します。 プロパティを ControlSize 目的の値に設定します。 たとえば、大きなメニューの場合は、 に設定します Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge
メニューの項目のサイズを変更します。 プロパティを ItemSize 目的の値に設定します。 たとえば、より大きな項目を表示するには、 に設定します Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge
実行時にメニューに対する変更を有効にします (たとえば、実行時にメニューにコントロールを追加できるようにします)。 Dynamic プロパティを trueに設定します。
メニューのコントロールにアクセスするか、メニューにコントロールを追加するか、メニューからコントロールを削除します。 Items プロパティを使用します。
メニューを Microsoft Office メニュー、グループ、またはメニューを含めることができる別のコントロールに追加します。 RibbonMenuItems Microsoft Office メニュー、グループ、またはコントロールの プロパティに を追加します。

注意

これは、Visual Studio Tools for Office Runtime によって実装されたインターフェイスです。 コードに実装されるものではありません。 詳細については、「Visual Studio Tools for Office ランタイムの概要」を参照してください。

使用

ここでは、.NET Framework 4 以降を対象とする Office プロジェクトで使用される型のバージョンについて説明します。 .NET Framework 3.5 を対象とするプロジェクトでは、この型のメンバーが異なること、およびこのコード例が動作しないことがあります。 .NET Framework 3.5 を対象とするプロジェクトの型の詳細については、Visual Studio 2008 ドキュメントの次の参照セクションを参照してください。http://go.microsoft.com/fwlink/?LinkId=160658

プロパティ

ControlSize

メニューのサイズを取得または設定します。

Description

現在のメニューに表示されるテキストを取得または設定します。

Dynamic

実行時にメニューを変更できるかどうかを示す値を取得または設定します。

Enabled

この RibbonControl が有効であるかどうかを示す値を取得または設定します。

(継承元 RibbonControl)
Id

この RibbonControl オブジェクトを識別するために Microsoft Office が使用する文字列を取得します。

(継承元 RibbonControl)
Image

メニューに表示されるイメージを取得または設定します。

ImageName

メニューのイメージを指定するために LoadImage イベント ハンドラーで使用できる名前を取得または設定します。

Items

メニュー上にあるコントロールのコレクションを取得します。

ItemSize

メニュー上のコントロールのサイズを取得または設定します。

KeyTip

メニューのキーボード アクセス キーを取得または設定します。

Label

メニューによって表示されるテキストを取得または設定します。

Name

この RibbonComponent の名前を取得または設定します。

(継承元 RibbonComponent)
OfficeImageId

Microsoft Office の組み込みアイコンを使用する場合に、メニュー上に表示するイメージを取得または設定します。

Parent

この RibbonComponent の親を表す RibbonComponent を取得します。

(継承元 RibbonComponent)
Position

メニューが Microsoft Office メニュー上にある場合に、メニューの位置を取得または設定します。

Ribbon

コントロール階層を含む最上位 Ribbon オブジェクトを取得します。

(継承元 RibbonComponent)
RibbonUI

Microsoft Office アプリケーションによってリボン機能拡張コードに提供される IRibbonUI のインスタンスを取得します。

(継承元 RibbonComponent)
ScreenTip

ユーザーがポインターをメニューの上に移動したときに表示されるヒント テキストを取得または設定します。

ShowImage

メニューに関連付けられているイメージが表示されるかどうかを示す値を取得または設定します。

ShowLabel

メニューのラベルが表示されるかどうかを示す値を取得または設定します。

SuperTip

ユーザーがポインターをメニューの上に移動したときに表示される複数行のヒント テキストを取得または設定します。

Tag

この RibbonComponent と関連付けられたアプリケーション固有のデータを取得または設定します。

(継承元 RibbonComponent)
Title

Microsoft Office メニューに追加されたメニューをユーザーが展開したときに表示されるタイトルを取得または設定します。

Visible

この RibbonControl が表示されるかどうかを示す値を取得または設定します。

(継承元 RibbonControl)

メソッド

PerformDynamicLayout()

RibbonComponent に動的メニューなどの動的な親があり、レイアウトが中断されていない場合に、親コントロールの Microsoft.Office.Core.IRibbonUI.InvalidateControl メソッドを呼び出します。

(継承元 RibbonComponent)
PerformLayout()

に親があり、レイアウトが中断されていない場合に、RibbonComponentMicrosoft.Office.Core.IRibbonUI.InvalidateControl を呼び出します。

(継承元 RibbonComponent)
ResumeLayout()

SuspendLayout() メソッドの実行結果を元に戻します。

(継承元 RibbonComponent)
ResumeLayout(Boolean)

SuspendLayout() メソッドの実行結果を元に戻します。

(継承元 RibbonComponent)
SuspendLayout()

Microsoft Office アプリケーションがリボン上のコントロールの状態を更新しないようにします。

(継承元 RibbonComponent)

イベント

ItemsLoading

コントロールまたは入れ子になったメニューが実行時に現在のメニューに読み込まれると発生します。

適用対象