다음을 통해 공유


방법: 단일 바로 가기 키에 명령 바인딩

Visual Studio의 추가 기능은 Visual Studio 2013에서 사용되지 않습니다. 추가 기능을 VSPackage 확장으로 업그레이드하는 것이 좋습니다. 업그레이드에 대한 자세한 내용은 FAQ: VSPackage 확장으로 추가 기능 변환 을 참조하십시오.

바로 가기 키 바인딩을 표시할 수 있을 뿐만 아니라 Bindings 속성을 사용하여 Visual Studio 명령에 대한 키 바인딩을 설정하거나 변경할 수도 있습니다. 키 바인딩을 변경하면 변경된 내용이 이전 키 바인딩 대신 적용되고 이전 바인딩은 삭제됩니다. 또한, 새 키 바인딩이 다른 명령에 이미 사용되고 있는 경우 키 바인딩이 이전 명령에서 제거되고 새 명령에 다시 할당됩니다.

그러나 새 키 바인딩으로 이전 바인딩을 대체하는 대신 기존 키 바인딩을 유지한 채 새 키 바인딩을 또 다른 바로 가기 키로 추가하여 사용할 수도 있습니다. 이 방법에 대한 설명은 방법: 기존 바로 가기 키 유지를 참조하십시오.

참고

표시되는 대화 상자와 메뉴 명령은 활성 설정이나 버전에 따라 도움말에서 설명하는 것과 다를 수 있습니다.이러한 절차는 일반 개발 설정을 사용하여 개발되었습니다.설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다.자세한 내용은 Visual Studio에서 개발 설정 사용자 지정을 참조하십시오.

절차

명령을 바로 가기 키에 바인딩하려면

  1. Visual Studio 추가 기능 마법사를 사용하여 새 추가 기능을 만듭니다. 프로젝트의 이름을 지정하고 확인을 클릭하여 마법사를 시작합니다.

    Visual Studio 추가 기능 마법사를 사용하는 방법에 대한 자세한 내용은 방법: 추가 기능 만들기를 참조하십시오.

  2. 프로그래밍 언어 선택 페이지에서 Visual C#을 사용하여 추가 기능 만들기를 선택하여 아래의 Visual C# 예제를 실행하거나, Visual Basic을 사용하여 추가 기능 만들기를 선택하여 Visual Basic 예제를 실행합니다.

  3. Visual Studio 추가 기능 마법사로 생성한 코드의 Connect 클래스에 아래의 예제 함수를 붙여넣습니다.

  4. 방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행에서 설명되어 있는 OnConnection 메서드입니다.

  5. 추가 기능을 빌드하고 실행합니다.

    F2 키를 눌러 File.Newfile 명령을 실행합니다.

예제

다음 추가 기능 예제에서는 File.NewFile 명령을 단일 바로 가기 키(F2)에 바인딩하는 방법을 보여 줍니다.

Public Sub OnConnection(ByVal application As Object, ByVal  _
  connectMode As ext_ConnectMode, ByVal addInInst As Object, ByRef  _
  custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    BindingsExample(_applicationObject)
            
End Sub

Sub BindingsExample(ByVal dte As DTE2)
    Dim cmds As Commands
    Dim cmd As Command
    Try
        ' Set references to the Commands collection and the 
        ' File.NewFile command.
        cmds = DTE.Commands
        cmd = cmds.Item("File.NewFile")

        ' Assigns the command (File.NewFile) globally to the F2 key.
        cmd.Bindings = "Global::F2"
        MsgBox("key remapped")
    Catch ex As Exception
        MsgBox(ex.ToString)
    End Try
End Sub
public void OnConnection(object application, ext_ConnectMode 
connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    BindingsExample(_applicationObject);

}

public void BindingsExample(DTE2 dte)
{
    Commands cmds;
    Command cmd;

    try
    {
        // Set references to the Commands collection and the 
        // File.NewFile command.
        cmds = dte.Commands;
        cmd = cmds.Item("File.NewFile", 1);

        // Assigns the command (File.NewFile) globally to the F2 key.
        cmd.Bindings = "Global::F2";
        System.Windows.Forms.MessageBox.Show("key remapped");
    }
    catch (Exception ex)
    {
        System.Windows.Forms.MessageBox.Show(ex.Message);
    }
}

참고 항목

작업

방법: 여러 바로 가기 키에 명령 바인딩

방법: 기존 바로 가기 키 유지

개념

Bindings 속성 매개 변수 형식

기타 리소스

추가 기능 명령을 키에 바인딩