RibbonMenu 인터페이스
리본 메뉴 탭 또는 Microsoft Office 메뉴의 메뉴를 나타냅니다.
네임스페이스: Microsoft.Office.Tools.Ribbon
어셈블리: Microsoft.Office.Tools.Common(Microsoft.Office.Tools.Common.dll)
구문
‘선언
<GuidAttribute("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")> _
Public Interface RibbonMenu _
Inherits RibbonControl, RibbonComponent, IComponent, IDisposable
[GuidAttribute("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")]
public interface RibbonMenu : RibbonControl,
RibbonComponent, IComponent, IDisposable
RibbonMenu 형식에서는 다음과 같은 멤버를 노출합니다.
속성
이름 | 설명 | |
---|---|---|
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 | 메뉴의 레이블이 표시되는지 여부를 나타내는 값을 가져오거나 설정합니다. | |
Site | IComponent 와 관련된 ISite를 가져오거나 설정합니다 . (IComponent에서 상속됨) | |
SuperTip | 포인터를 메뉴 위로 이동할 때 나타나는 여러 줄로 된 팁 텍스트를 가져오거나 설정합니다. | |
Tag | 이 RibbonComponent와 연결된 응용 프로그램별 데이터를 가져오거나 설정합니다. (RibbonComponent에서 상속됨) | |
Title | Microsoft Office 메뉴에 추가된 메뉴를 확장할 때 표시되는 제목을 가져오거나 설정합니다. | |
Visible | 이 RibbonControl이 표시되는지 여부를 나타내는 값을 가져오거나 설정합니다. (RibbonControl에서 상속됨) |
위쪽
메서드
이름 | 설명 | |
---|---|---|
Dispose | 관리되지 않는 리소스의 확보, 해제 또는 다시 설정과 관련된 응용 프로그램 정의 작업을 수행합니다. (IDisposable에서 상속됨) | |
PerformDynamicLayout | RibbonComponent 에 동적 메뉴와 같은 동적 부모가 있고 레이아웃이 일시 중단되지 않은 경우 부모 컨트롤의 Microsoft.Office.Core.IRibbonUI.InvalidateControl 메서드를 호출합니다. (RibbonComponent에서 상속됨) | |
PerformLayout | RibbonComponent 에 부모가 있고 레이아웃이 일시 중단되지 않은 경우 Microsoft.Office.Core.IRibbonUI.InvalidateControl을 호출합니다. (RibbonComponent에서 상속됨) | |
ResumeLayout() | SuspendLayout 메서드의 결과를 되돌립니다. (RibbonComponent에서 상속됨) | |
ResumeLayout(Boolean) | SuspendLayout 메서드의 결과를 되돌립니다. (RibbonComponent에서 상속됨) | |
SuspendLayout | Microsoft Office 응용 프로그램에서 리본 메뉴의 컨트롤 상태를 새로 고치지 않도록 합니다. (RibbonComponent에서 상속됨) |
위쪽
이벤트
이름 | 설명 | |
---|---|---|
Disposed | 구성 요소의 Disposed 이벤트를 처리하는 메서드를 나타냅니다. (IComponent에서 상속됨) | |
ItemsLoading | 런타임에 현재 메뉴에 컨트롤 또는 중첩된 메뉴가 로드될 때 발생합니다. |
위쪽
설명
Visual Studio는 도구 상자의 Office 리본 컨트롤탭에서 리본 디자이너로 메뉴 컨트롤을 끌어올 경우 RibbonMenu 개체를 만듭니다.
RibbonFactory 개체의 CreateRibbonMenu 메서드를 사용하여 런타임에 RibbonMenu를 만들 수 있습니다.
다음과 같은 두 가지 방법으로 RibbonFactory 개체에 액세스할 수 있습니다.
리본 클래스의 Factory 속성을 사용합니다. 리본 클래스 내부의 코드에서 이 방법을 사용합니다.
Globals.Factory.GetRibbonFactory 메서드를 사용합니다. 리본 클래스 외부의 코드에서 이 방법을 사용합니다.
일반 작업
다음 표에서는 일반적인 작업에 유용한 멤버를 보여 줍니다. 이러한 모든 작업은 디자인 타임에 수행할 수 있습니다. 이러한 작업 중 일부는 런타임에 Office 응용 프로그램에 리본 메뉴가 로드되기 전 또는 동적 메뉴에 컨트롤이 추가되기 전에만 수행할 수 있습니다. 자세한 내용은 리본 개체 모델 개요을 참조하십시오.
Task |
멤버 |
---|---|
메뉴에 이미지를 표시합니다. |
기본 제공 리본 컨트롤에 나타나는 이미지를 다시 사용할 수도 있습니다. 이렇게 하려면 OfficeImageId를 메뉴의 아이콘으로 표시할 기본 제공 Microsoft Office 이미지의 ID로 설정합니다. |
메뉴의 크기를 변경합니다. |
ControlSize 속성을 원하는 값으로 설정합니다. 예를 들어 큰 메뉴의 경우 해당 속성을 Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge로 설정합니다. |
메뉴의 항목 크기를 변경합니다. |
ItemSize 속성을 원하는 값으로 설정합니다. 예를 들어 큰 항목을 표시하려면 해당 속성을 Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge로 설정합니다. |
런타임에 메뉴를 변경할 수 있도록 합니다. 예를 들어 런타임에 메뉴에 컨트롤을 추가할 수 있도록 합니다. |
Dynamic 속성을 true으로 설정합니다. |
메뉴의 컨트롤에 액세스하거나, 메뉴에 컨트롤을 추가하거나, 메뉴에서 컨트롤을 제거합니다. |
Items 속성을 사용합니다. |
Microsoft Office 메뉴, 그룹 또는 메뉴를 포함할 수 있는 다른 컨트롤에 메뉴를 추가합니다. |
RibbonMenu를 Microsoft Office 메뉴, 그룹 또는 컨트롤의 Items 속성에 추가합니다. |
참고
이 인터페이스는 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 설명서의 다음 참조 섹션을 참조하십시오. https://go.microsoft.com/fwlink/?LinkId=160658.
예제
다음 예제에서는 런타임에 기존 메뉴에 하위 메뉴를 추가하고 채우는 방법을 보여 줍니다.
런타임에 컨트롤을 업데이트하고 LINQ(Language-Integrated Query)를 사용하여 AdventureWorks 샘플 데이터베이스의 데이터를 가져오는 기능을 포함하는 보다 완전한 예제는 연습: 런타임에 리본 메뉴의 컨트롤 업데이트를 참조하십시오.
이 코드 예제를 실행하려면 먼저 다음 단계를 수행해야 합니다.
Office 프로젝트에 리본(비주얼 디자이너) 항목을 추가합니다.
그룹을 사용자 지정 탭에 추가합니다.
그룹에 메뉴를 추가합니다.
메뉴의 (Name) 속성을 CustomerMenu로 설정합니다.
메뉴의 Label 속성을 Customers로 설정합니다.
메뉴의 Dynamic 속성을 true로 설정합니다.
이렇게 하면 Office 응용 프로그램에 리본 메뉴를 로드한 후 런타임에 메뉴의 컨트롤을 추가 및 제거할 수 있습니다.
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
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);
}
참고 항목
참조
Microsoft.Office.Tools.Ribbon 네임스페이스