다음을 통해 공유


바로 가기 메뉴에 명령 추가

이 항목에서는 VSTO 추가 기능을 사용하여 Office 애플리케이션의 바로 가기 메뉴에 명령을 추가하는 방법을 보여 줍니다.

적용 대상: 이 항목의 정보는 문서 수준 프로젝트 및 VSTO 추가 기능 프로젝트에 적용됩니다. Office 애플리케이션 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하세요.

Office에서 바로 가기 메뉴에 명령을 추가하려면

  1. 리본 XML 항목을 문서 수준 또는 VSTO 추가 기능 프로젝트에 추가합니다. 자세한 내용은 방법: 리본 사용자 지정 시작을 참조하세요. In

  2. 솔루션 탐색기에서 ThisAddin.cs 또는 ThisAddin.vb를 선택합니다.

  3. 메뉴 모음에서 보기>코드를 차례로 선택합니다.

    ThisAddin 클래스 파일이 코드 편집기에서 열립니다.

  4. ThisAddin 클래스에 다음 코드를 추가합니다. 이 코드는 CreateRibbonExtensibilityObject 메서드를 재정의하고 Office 애플리케이션에 리본 XML 클래스를 반환합니다.

    protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject()
    {
          return new Ribbon1();
    }
    
  5. 솔루션 탐색기에서 리본 XML 파일을 선택합니다. 기본적으로 리본 XML 파일의 이름은 Ribbon1.xml입니다.

  6. 메뉴 모음에서 보기>코드를 차례로 선택합니다.

    코드 편집기에서 리본 xml 파일이 열립니다.

  7. 코드 편집기에서 바로 가기 메뉴와 바로 가기 메뉴에 추가할 컨트롤을 설명하는 XML을 추가합니다.

    다음 예제에서는 Word 문서의 바로 가기 메뉴에 단추, 메뉴 및 갤러리 컨트롤을 추가합니다. 이 바로 가기 메뉴의 컨트롤 ID는 ContextMenuText입니다. Office 2010 바로 가기 컨트롤 ID의 전체 목록은 Office 2010 도움말 파일: Office Fluent 사용자 인터페이스 컨트롤 식별자를 참조하세요.

    <?xml version="1.0" encoding="UTF-8"?>
    <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
      <contextMenus>
        <contextMenu idMso="ContextMenuText">
          <button id="MyButton" label="My Button" insertBeforeMso="HyperlinkInsert" onAction="GetButtonID" />
          <menu id="MySubMenu" label="My Submenu" >
            <button id="MyButton2" label="Button on submenu" />
          </menu>
          <gallery id="galleryOne" label="My Gallery">
            <item id="item1" imageMso="HappyFace" />
            <item id="item2" imageMso="HappyFace" />
            <item id="item3" imageMso="HappyFace" />
            <item id="item4" imageMso="HappyFace" />
          </gallery>
        </contextMenu>
      </contextMenus>
    </customUI>
    
  8. 솔루션 탐색기에서 MyRibbon.cs 또는 MyRibbon.vb를 선택합니다.

  9. 처리하려는 각 컨트롤의 Ribbon1 클래스에 콜백 메서드를 추가합니다.

    다음 콜백 메서드는 My Button 단추를 처리합니다. 이 코드는 활성 문서의 현재 커서 위치에 문자열을 추가합니다.

    public void GetButtonID(Office.IRibbonControl control)
    {
        Microsoft.Office.Interop.Word.Range currentRange = Globals.ThisAddIn.Application.Selection.Range;
        currentRange.Text = "This text was added by the context menu named My Button.";
    }