UIElement.OnPreviewMouseRightButtonDown(MouseButtonEventArgs) 메서드

정의

처리되지 않은 PreviewMouseRightButtonDown 라우트된 이벤트가 해당 경로에서 이 클래스로부터 파생된 요소에 도달할 경우 호출됩니다.Invoked when an unhandled PreviewMouseRightButtonDown routed event reaches an element in its route that is derived from this class. 이 이벤트에 대한 클래스 처리를 추가하려면 이 메서드를 구현합니다.Implement this method to add class handling for this event.

protected:
 virtual void OnPreviewMouseRightButtonDown(System::Windows::Input::MouseButtonEventArgs ^ e);
protected virtual void OnPreviewMouseRightButtonDown (System.Windows.Input.MouseButtonEventArgs e);
abstract member OnPreviewMouseRightButtonDown : System.Windows.Input.MouseButtonEventArgs -> unit
override this.OnPreviewMouseRightButtonDown : System.Windows.Input.MouseButtonEventArgs -> unit
Protected Overridable Sub OnPreviewMouseRightButtonDown (e As MouseButtonEventArgs)

매개 변수

e
MouseButtonEventArgs

이벤트 데이터를 포함하는 MouseButtonEventArgs입니다.The MouseButtonEventArgs that contains the event data. 이벤트 데이터는 마우스 오른쪽 단추를 놓았음을 보고합니다.The event data reports that the right mouse button was pressed.

설명

PreviewMouseRightButtonDown 이벤트는 터널링 경로를 이동 하는 것 처럼 보이지만 실제로 간접 방법으로 이동 합니다.The PreviewMouseRightButtonDown event appears to travel a tunneling route but actually travels in an indirect way. Mouse.PreviewMouseDown은 터널로 라우팅되는 기본 이벤트 이며 이벤트 경로를 따라 UIElement는 동일한 처리를 사용 하 여 직접 라우트된 이벤트 MouseRightButtonDown을 발생 시킵니다.Mouse.PreviewMouseDown is the underlying event that is tunnel routed, and each UIElement along the event route uses identical handling to raise the direct routed event MouseRightButtonDown. 이 요소를 위해 PreviewMouseRightButtonDown 이벤트를 처리 된 것으로 표시할 수 있지만 처리 된 상태는 이벤트 경로를 따라 다른 요소에 perpetuate 되지 않습니다.Although you can mark the PreviewMouseRightButtonDown event as handled for purposes of this element, the handled state does not perpetuate to other elements along the event route. 그러나 일반 인스턴스 처리기 (handledEventsToo지정 하지 않은)가 호출 되는 것을 방지 하기 위해 이벤트를 처리 된 것으로 표시할 수 있습니다.However, you might want to mark the event as handled in order to prevent general instance handlers (those that did not specify handledEventsToo) from being invoked.

UIElement의 일반 마우스 이벤트 처리에 대 한 기본 구현은 Mouse.PreviewMouseDown를 수신 하 고 적절 한 로컬 이벤트로 변환 합니다.The default implementation for general mouse event handling in UIElement listens for Mouse.PreviewMouseDown and converts it to an appropriate local event. 이 논리를 재정의 하려면 파생 클래스를 만들어야 합니다.If you want to override this logic, you must create a derived class. 파생 클래스의 정적 생성자에서 Mouse.PreviewMouseDown에 대 한 대체 클래스 처리기를 등록 합니다.In the static constructor of your derived class, register an alternative class handler for Mouse.PreviewMouseDown. OnPreviewMouseRightButtonDown를 재정의 하 여 UIElement의 마우스 처리 동작을 변경할 수 없습니다.You cannot change the mouse handling behavior of UIElement by overriding OnPreviewMouseRightButtonDown.

또는 특정 마우스 상태에 대 한 이벤트 처리를 변경 하기 위해이 메서드를 재정의할 수 있습니다.Alternatively, you can override this method in order to change event handling for a specific mouse state. 기본 구현을 호출 하도록 선택 하는 것은 시나리오에 따라 달라 집니다.Whether you choose to call the base implementation depends on your scenario. Base 호출에 실패 하면 OnPreviewMouseRightButtonDown를 호출 해야 하는 상위 클래스에서 해당 마우스 이벤트에 대 한 기본 입력 처리를 사용할 수 없습니다.Failing to call base disables default input handling for that mouse event on ancestor classes that also expect to invoke OnPreviewMouseRightButtonDown. 예를 들어 Control에서 파생 하 고 base를 호출 하지 않고 파생 클래스에서 OnPreviewMouseRightButtonDown을 재정의할 수 있습니다. 그러나이 재정의는 Control 기본 동작의 일부인 컨트롤의 상황에 맞는 메뉴 서비스를 사용 하지 않도록 설정 합니다.For example, you can derive from Control and override OnPreviewMouseRightButtonDown in your derived class without calling base; however, this override disables the context menu services on your control, which are part of the Control default behavior.

적용 대상