UIElement.OnPreviewMouseLeftButtonDown(MouseButtonEventArgs) 메서드


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

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

매개 변수


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


PreviewMouseLeftButtonDown 이벤트는 터널링 경로를 이동 하는 것 처럼 보이지만 실제로 간접 방법으로 이동 합니다.The PreviewMouseLeftButtonDown event appears to travel a tunneling route but actually travels in an indirect way. Mouse.PreviewMouseDown은 터널로 라우팅되는 기본 이벤트 이며 이벤트 경로를 따라 UIElement는 동일한 처리를 사용 하 여 직접 라우트된 이벤트 PreviewMouseLeftButtonDown을 발생 시킵니다.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 PreviewMouseLeftButtonDown. 이 요소를 위해 PreviewMouseLeftButtonDown 이벤트를 처리 된 것으로 표시할 수 있지만 처리 된 상태는 이벤트 경로를 따라 다른 요소에 perpetuate 되지 않습니다.Although you can mark the PreviewMouseLeftButtonDown 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. OnPreviewMouseLeftButtonDown를 재정의 하 여 UIElement의 마우스 처리 동작을 변경할 수 없습니다.You cannot change the mouse handling behavior of UIElement by overriding OnPreviewMouseLeftButtonDown.

또는 특정 마우스 상태에 대 한 이벤트 처리를 변경 하기 위해이 메서드를 재정의할 수 있습니다.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 호출에 실패 하면 OnPreviewMouseLeftButtonDown를 호출 해야 하는 상위 클래스에서 해당 마우스 이벤트에 대 한 기본 입력 처리를 사용할 수 없습니다.Failing to call base disables default input handling for that mouse event on ancestor classes that also expect to invoke OnPreviewMouseLeftButtonDown. 예를 들어 Button에서 파생 하 고 기본 구현을 호출 하지 않고 파생 클래스의 OnPreviewMouseLeftButtonDown를 재정의할 수 있습니다. 그러나이 재정의는 Click 이벤트를 사용 하지 않도록 설정 합니다.For example, you can derive from Button and override OnPreviewMouseLeftButtonDown in your derived class without calling the base implementation; however, this override disables the Click event.

적용 대상