다음을 통해 공유


연습: 리본 디자이너를 사용하여 사용자 지정 탭 만들기

업데이트: 2010년 9월

이 연습에서는 리본 디자이너를 사용하여 사용자 지정 리본 탭을 만드는 방법을 보여 줍니다. 리본 디자이너를 사용하여 사용자 지정 탭에 컨트롤을 추가하고 배치할 수 있습니다.

적용 대상: 이 항목의 정보는 Excel 2007 및 Excel 2010, InfoPath 2007 및 InfoPath 2010, Outlook 2007 및 Outlook 2010, PowerPoint 2007 및 PowerPoint 2010, Project 2010, Visio 2010, Word 2007 및 Word 2010의 문서 수준 프로젝트 및 응용 프로그램 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

이 연습에서는 다음 작업을 수행합니다.

  • 작업 창 만들기

  • 사용자 지정 탭 만들기

  • 사용자 지정 탭의 단추를 사용하여 작업 창 숨기기 및 표시

참고

일부 Visual Studio 사용자 인터페이스 요소의 경우 다음 지침에 설명된 것과 다른 이름 또는 위치가 시스템에 표시될 수 있습니다. 설치한 Visual Studio 버전과 사용하는 설정에 따라 이러한 요소가 결정됩니다. 자세한 내용은 설정에 대한 작업을 참조하십시오.

사전 요구 사항

이 연습을 완료하려면 다음 구성 요소가 필요합니다.

-

Microsoft Office 개발자 도구를 포함하는 Visual Studio 2010 버전입니다. 자세한 내용은 [Office 솔루션을 개발할 수 있도록 컴퓨터 구성](bb398242\(v=vs.100\).md)을 참조하십시오.
  • Microsoft Office Excel 2007 또는 Excel 2010 

비디오에 링크이 항목의 비디오 버전을 보려면 Video How to: Creating a Custom Tab by Using the Ribbon Designer를 참조하십시오. 관련 비디오 데모를 보려면 How Do I: Use the Ribbon Designer to Customize the Ribbon in Excel?을 참조하십시오.

Excel 통합 문서 프로젝트 만들기

리본 디자이너를 사용하는 단계는 모든 Office 응용 프로그램에서 거의 동일합니다. 이 예제에서는 Excel 통합 문서를 사용합니다.

Excel 통합 문서 프로젝트를 만들려면

  • MyExcelRibbon이라는 Excel 통합 문서 프로젝트를 만듭니다. 자세한 내용은 방법: Visual Studio에서 Office 프로젝트 만들기를 참조하십시오.

    Visual Studio의 디자이너에 새 통합 문서가 열리고 MyExcelRibbon 프로젝트가 솔루션 탐색기에 추가됩니다.

작업 창 만들기

프로젝트에 두 개의 사용자 지정 작업 창을 추가합니다. 나중에 이러한 작업 창을 표시하거나 숨기는 단추를 사용자 지정 탭에 추가합니다.

작업 창을 만들려면

  1. 프로젝트 메뉴에서 새 항목 추가를 클릭합니다.

  2. 새 항목 추가 대화 상자에서 ActionsPaneControl을 선택한 다음 추가를 클릭합니다.

    ActionsPaneControl1.cs 또는 ActionsPaneControl1.vb 파일이 디자이너에서 열립니다.

  3. 도구 상자공용 컨트롤 탭에서 디자이너 화면에 레이블을 추가합니다.

  4. 속성 창에서 label1의 Text 속성을 Actions Pane 1로 설정합니다.

  5. 1-5단계를 반복하여 두 번째 작업 창 및 레이블을 만듭니다. 두 번째 레이블의 Text 속성을 Actions Pane 2로 설정합니다.

사용자 지정 탭 만들기

Office 응용 프로그램의 디자인 지침 중 하나는 사용자가 항상 Office 응용 프로그램 UI를 제어할 수 있어야 한다는 것입니다. 작업 창에 대해 이 기능을 추가하려면 리본 메뉴의 사용자 지정 탭에서 각 작업 창을 표시하거나 숨기는 단추를 추가합니다. 사용자 지정 탭을 만들려면 프로젝트에 리본(비주얼 디자이너) 항목을 추가합니다. 이 디자이너는 컨트롤을 추가 및 배치하고, 컨트롤 속성을 설정하고, 컨트롤 이벤트를 처리하는 데 유용합니다.

사용자 지정 탭을 만들려면

  1. 프로젝트 메뉴에서 새 항목 추가를 클릭합니다.

  2. 새 항목 추가 대화 상자에서 **리본(비주얼 디자이너)**을 선택합니다.

  3. 새 리본 메뉴의 이름을 MyRibbon으로 변경하고 추가를 클릭합니다.

    MyRibbon.cs 또는 MyRibbon.vb 파일이 리본 디자이너에서 열리고 기본 탭 및 그룹이 표시됩니다.

  4. 리본 디자이너에서 기본 탭을 클릭합니다.

  5. 속성 창에서 ControlId 속성을 확장하고 ControlIdType 속성을 Custom으로 설정합니다.

  6. ControlId 속성을 My Custom Tab으로 설정합니다.

  7. 리본 디자이너에서 group1을 클릭합니다.

  8. 속성 창에서 Label 속성을 Actions Pane Manager로 설정합니다.

  9. 도구 상자Office 리본 컨트롤 탭에 있는 단추를 group1로 끌어 옵니다.

  10. button1을 클릭하여 선택합니다.

  11. 속성 창에서 Label 속성을 Show Actions Pane 1로 설정합니다.

  12. group1에 두 번째 단추를 추가하고 Label 속성을 Show Actions Pane 2로 설정합니다.

  13. 도구 상자Office 리본 컨트롤 탭에서 ToggleButton 컨트롤을 group1로 끌어 옵니다.

  14. Label 속성을 Hide Actions Pane으로 설정합니다.

사용자 지정 탭의 단추를 사용하여 작업 창 숨기기 및 표시

마지막 단계는 사용자에게 응답하는 코드를 추가하는 것입니다. 두 단추의 Click 이벤트와 설정/해제 단추의 Click 이벤트에 대한 이벤트 처리기를 추가합니다. 이러한 이벤트 처리기에 작업 창을 숨기거나 표시하는 코드를 추가합니다.

사용자 지정 탭의 단추를 사용하여 작업 창을 숨기거나 표시하려면

  1. 솔루션 탐색기에서 MyRibbon.cs 또는 MyRibbon.vb를 마우스 오른쪽 단추로 클릭한 다음 코드 보기를 클릭합니다.

  2. 다음 코드를 MyRibbon 클래스의 맨 위에 추가합니다. 이 코드는 두 개의 작업 창 개체를 만듭니다.

    Dim actionsPane1 As New ActionsPaneControl1()
    Dim actionsPane2 As New ActionsPaneControl2()
    
    ActionsPaneControl1 actionsPane1 = new ActionsPaneControl1();
    ActionsPaneControl2 actionsPane2 = new ActionsPaneControl2();
    
  3. MyRibbon_Load 메서드를 다음 코드로 바꿉니다. 이 코드는 ActionsPane.Controls 컬렉션에 작업 창 개체를 추가하고 뷰에서 해당 개체를 숨깁니다. 또한 Visual C# 코드는 여러 리본 컨트롤 이벤트에 대리자를 연결합니다.

    Private Sub MyRibbon_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1)
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2)
        actionsPane1.Hide()
        actionsPane2.Hide()
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False
    End Sub
    
    private void MyRibbon_Load(object sender, RibbonUIEventArgs e)
    {
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1);
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2);
        actionsPane1.Hide();
        actionsPane2.Hide();
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
    
        // Use the following code in projects that target the .NET Framework 4.
        this.button1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.button1_Click);
        this.button2.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.button2_Click);
        this.toggleButton1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.toggleButton1_Click);
    
        // For .NET Framework 3.5 projects, use the following code instead.
        // this.button1.Click += new EventHandler<RibbonControlEventArgs>(button1_Click);
        // this.button2.Click += new EventHandler<RibbonControlEventArgs>(button2_Click);
        // this.toggleButton1.Click += new EventHandler<RibbonControlEventArgs>(toggleButton1_Click);
    }
    

    Visual C# 코드 예제를 통해 .NET Framework 4를 대상으로 하는 프로젝트와 .NET Framework 3.5를 대상으로 하는 프로젝트의 차이점을 확인하려면 .NET Framework 4로 마이그레이션하는 Office 프로젝트에서 리본 메뉴 사용자 지정 업데이트를 참조하십시오.

  4. MyRibbon 클래스에 다음 세 개의 이벤트 처리기 메서드를 추가합니다. 이러한 메서드는 두 단추의 Click 이벤트와 설정/해제 단추의 Click 이벤트를 처리합니다. button1 및 button2에 대한 이벤트 처리기는 대체 작업 창을 표시합니다. toggleButton1에 대한 이벤트 처리기는 활성 작업 창을 표시하거나 숨깁니다.

    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _
            Handles Button1.Click
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
        actionsPane2.Hide()
        actionsPane1.Show()
        ToggleButton1.Checked = False
    End Sub
    
    Private Sub Button2_Click(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _
            Handles Button2.Click
    
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
        actionsPane1.Hide()
        actionsPane2.Show()
        ToggleButton1.Checked = False
    
    End Sub
    
    
    Private Sub ToggleButton1_Click(ByVal sender As System.Object, _
        ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _
            Handles ToggleButton1.Click
    
        If ToggleButton1.Checked Then
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False
        Else
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True
        End If
    
    End Sub
    
    private void button1_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane2.Hide();
        actionsPane1.Show();
        ToggleButton1.Checked = false;
    }
    
    private void button2_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane1.Hide();
        actionsPane2.Show();
        ToggleButton1.Checked = false;
    
    }
    
    private void toggleButton1_Click(object sender, RibbonControlEventArgs e)
    {
        if (toggleButton1.Checked == true)
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
        }
        else
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        }
    
    }
    

사용자 지정 탭 테스트

프로젝트를 실행하면 Excel이 시작되고 리본 메뉴에 My Custom Tab 탭이 표시됩니다. My Custom Tab의 단추를 클릭하여 작업 창을 표시하거나 숨깁니다.

사용자 지정 탭을 테스트하려면

  1. F5 키를 눌러 프로젝트를 실행합니다.

  2. My Custom Tab 탭을 클릭합니다.

  3. Custom Actions Pane Manager 그룹에서 Show Actions Pane 1을 클릭합니다.

    작업 창이 나타나고 Actions Pane 1이라는 레이블이 표시됩니다.

  4. Show Actions Pane 2를 클릭합니다.

    작업 창이 나타나고 Actions Pane 2라는 레이블이 표시됩니다.

  5. Hide Actions Pane을 클릭합니다.

    작업 창이 더 이상 표시되지 않습니다.

다음 단계

다음 항목에서는 Office UI를 사용자 지정하는 방법에 대해 더 자세히 설명합니다.

  • 문서 수준 사용자 지정에 컨텍스트 기반 UI를 추가합니다. 자세한 내용은 작업 창 개요를 참조하십시오.

  • 표준 또는 사용자 지정 Microsoft Office Outlook 양식을 확장합니다. 자세한 내용은 연습: Outlook 양식 영역 디자인를 참조하십시오.

참고 항목

작업

방법: 리본 메뉴 사용자 지정 시작

방법: 리본의 탭 위치 변경

방법: 기본 제공 탭 사용자 지정

방법: Microsoft Office 메뉴 사용자 지정

개념

런타임에 리본 메뉴에 액세스

리본 디자이너

Outlook에 대해 리본 메뉴 사용자 지정

리본 개체 모델 개요

기타 리소스

리본 개요

변경 기록

날짜

변경 내용

이유

2010년 9월

.NET Framework 3.5 코드 예제를 추가했습니다.

콘텐츠 버그 수정

2010년 9월

이 연습의 결과로 사용자 지정 탭이 생성되는지 확인하는 단계를 추가했습니다. 이 변경 전에는 추가 기능 탭에만 컨트롤이 나타났습니다.

콘텐츠 버그 수정