다음을 통해 공유


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
특성
구현

예제

다음 예제에서는 런타임에 기존 메뉴에 하위 메뉴를 추가하고 채우는 방법을 보여 줍니다.

런타임에 컨트롤을 업데이트하고 LINQ(Language-Integrated 쿼리)를 사용하여 AdventureWorks 샘플 데이터베이스에서 데이터를 가져오는 더 풍부한 예제는 연습: 런타임에 리본 메뉴의 컨트롤 업데이트를 참조하세요.

이 코드 예제를 실행하려면 먼저 다음 단계를 수행해야 합니다.

  1. Office 프로젝트에 리본 메뉴(Visual Designer) 항목을 추가합니다.

  2. 사용자 지정 탭에 그룹을 추가합니다.

  3. 그룹에 메뉴를 추가합니다.

  4. 메뉴CustomerMenu(Name) 속성을 로 설정합니다.

  5. 메뉴의 Label 속성을 Customers로 설정합니다.

  6. 메뉴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는 도구 상자RibbonMenuOffice 리본 컨트롤 탭에서 리본 메뉴 Designer 메뉴 컨트롤을 끌 때 개체를 만듭니다.

개체의 RibbonFactory 메서드를 RibbonMenu 사용하여 런타임에 를 CreateRibbonMenu 만들 수 있습니다.

RibbonFactory 개체에 액세스하는 방법에는 다음 두 가지가 있습니다.

  • Ribbon 클래스의 Factory 속성 사용. Ribbon 클래스의 코드에서 이 방법을 사용합니다.

  • Globals.Factory.GetRibbonFactory 메서드 사용. Ribbon 클래스 외부 코드에서 이 방법을 사용합니다.

일반 태스크

다음 표에서는 일반적인 작업에 유용한 멤버를 나열합니다. 이러한 모든 작업은 디자인 타임에 수행할 수 있습니다. 이러한 작업 중 일부는 리본이 Office 애플리케이션에 로드되기 전이나 런타임에 동적 메뉴에 컨트롤을 추가하기 전에 런타임에 수행할 수 있습니다. 자세한 내용은 리본 개체 모델 개요를 참조하세요.

Task 멤버
메뉴에 이미지를 표시합니다. Image 또는 ImageName 속성을 사용합니다.

기본 제공 리본 컨트롤에 표시되는 이미지를 다시 사용할 수도 있습니다. 이렇게 하려면 메뉴의 아이콘으로 표시하려는 기본 제공 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

Microsoft Office에서 이 RibbonControl 개체를 식별하는 데 사용하는 문자열을 가져옵니다.

(다음에서 상속됨 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

런타임에 컨트롤 또는 중첩된 메뉴가 현재 메뉴에 로드될 때 발생합니다.

적용 대상