RibbonMenu 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
리본 탭 또는 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 샘플 데이터베이스에서 데이터를 가져오는 더 풍부한 예제는 연습: 런타임에 리본 메뉴의 컨트롤 업데이트를 참조하세요.
이 코드 예제를 실행하려면 먼저 다음 단계를 수행해야 합니다.
Office 프로젝트에 리본 메뉴(Visual Designer) 항목을 추가합니다.
사용자 지정 탭에 그룹을 추가합니다.
그룹에 메뉴를 추가합니다.
메뉴
CustomerMenu
의 (Name) 속성을 로 설정합니다.메뉴의 Label 속성을 Customers로 설정합니다.
메뉴
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 |
런타임에 컨트롤 또는 중첩된 메뉴가 현재 메뉴에 로드될 때 발생합니다. |