Share via


IMenuCommandService.AddCommand(MenuCommand) 메서드

정의

지정된 표준 메뉴 명령을 메뉴에 추가합니다.

public:
 void AddCommand(System::ComponentModel::Design::MenuCommand ^ command);
public void AddCommand (System.ComponentModel.Design.MenuCommand command);
abstract member AddCommand : System.ComponentModel.Design.MenuCommand -> unit
Public Sub AddCommand (command As MenuCommand)

매개 변수

command
MenuCommand

추가할 MenuCommand입니다.

예외

지정된 CommandIDMenuCommand가 이미 메뉴에 있습니다.

설명

StandardCommands 열거형에는 MenuCommands 특정 메뉴의 위치와 이미 연결된 미리 정의된 표준 명령 및 메뉴 명령에 대한 식별자가 포함 CommandID 됩니다.

참고

이미 존재하는 CommandID 메뉴 명령을 추가하려고 하면 가 InvalidOperationExceptionthrow됩니다. 메뉴 명령을 추가할 때 메서드를 사용하여 FindCommand 메뉴에 아직 없는지 검사 예외 처리를 현명하게 사용해야 합니다.

다음 절차를 사용하여 미리 정의된 메뉴 명령에 이벤트 처리기를 연결할 수 있습니다.

  1. 이벤트 처리기와 연결하는 메뉴 명령이 메뉴에 추가되었거나 메서드와 함께 FindCommand 있는 경우 나중에 이 메뉴 명령을 복원할지 여부와 새 이벤트 처리기에서 현재 이벤트 처리기를 호출할지 여부를 고려합니다. 코드가 메뉴 명령을 복원하거나 이벤트 처리기의 호출을 연결할 수 있는 경우 메뉴 명령에 대한 참조를 어딘가에 저장해야 합니다.

  2. 동일한 CommandID 기존 메뉴 명령이 메서드를 사용하여 RemoveCommand 메뉴에서 제거되었는지 확인합니다.

  3. 새로 MenuCommand 만들고 추가할 명령을 나타내는 와 CommandID 함께 생성자에서 이벤트 처리기를 지정합니다. 각 표준 메뉴 명령은 추가되는 미리 정의된 메뉴 위치와 연결됩니다. 지원되는 명령 ID는 및 MenuCommands 열거형에 StandardCommands 정의됩니다.

  4. 메뉴 명령에 대한 기존 이벤트 처리기를 호출하려면 메뉴 명령의 호출 이벤트를 처리하는 이벤트 처리기에서 메뉴에서 대체한 메뉴 명령의 메서드를 호출 Invoke 합니다.

  5. 대체한 기존 메뉴 명령의 이벤트 처리기를 복원하려는 경우 만든 대체 메뉴 명령을 제거한 후 저장된 기존 메뉴 명령을 추가합니다. 형식에 대한 메서드에 이 동작을 Dispose 추가할 수 있습니다.

적용 대상

추가 정보