UIElement.MouseLeftButtonDown UIElement.MouseLeftButtonDown UIElement.MouseLeftButtonDown UIElement.MouseLeftButtonDown Event


この要素の上にマウス ポインターがある状態でマウスの左ボタンが押されたときに発生します。Occurs when the left mouse button is pressed while the mouse pointer is over this element.

 virtual event System::Windows::Input::MouseButtonEventHandler ^ MouseLeftButtonDown;
public event System.Windows.Input.MouseButtonEventHandler MouseLeftButtonDown;
member this.MouseLeftButtonDown : System.Windows.Input.MouseButtonEventHandler 
Public Custom Event MouseLeftButtonDown As MouseButtonEventHandler 



このルーティング イベント要素ツリー ルートをバブルに従うよう、直接ルーティング イベントが発生し、それぞれで、要素ツリーに沿って reraised を実際にはUIElementします。Although this routed event seems to follow a bubbling route through an element tree, it actually is a direct routed event that is raised and reraised along the element tree by each UIElement.

このイベントは、基になるのマウス ボタンの詳細を報告する複数の関連イベントのいずれかのMouse.MouseDown添付イベントをイベント ルート上の各要素によって処理されるは、そのイベント。This event is one of several related events that report the mouse-button specifics of an underlying Mouse.MouseDown event, which is an attached event that is processed by each element along an event route.

このイベントのイベント データは、基になるイベントのデータを公開Mouse.MouseDownイベント。The event data of this event exposes the event data of the underlying Mouse.MouseDown event. そのイベントがイベント ルート上で処理済みとしてマークすると、マウス ボタンの特定のイベントも発生します。ただし、明示的に呼び出すことによって、マウス ボタンの特定のイベント ハンドラーを追加する必要がありますAddHandler、処理済みとしてマークされているイベントを処理するために、イベント リスナーをするためには、オプションを使用します。If that event is marked as handled along the event route, the mouse-button specific events are still raised; however, handlers of the mouse-button specific events must be added by explicitly calling AddHandler, with the option to handle events that are already marked as handled, in order to be listeners to the event. マークした場合MouseLeftButtonDown、処理は本質的にマークしてMouse.MouseDown経路、さらにすべてのリスナーは自動的に処理およびすべての関連するイベントです。If you mark MouseLeftButtonDown handled, you are essentially marking Mouse.MouseDown handled for all further listeners along the route, and on all related events. これは、可能性がありますが含まれていますクラス ハンドラーが生成されたイベントにはなどMouseDoubleClickします。This possibly includes class-handler generated events such as MouseDoubleClick.

概念的には、このイベントと考える (とその他のマウス ボタンのイベントのUIElement) マウス「サービス」にする (によって提供されるサービスの定義で、Mouseクラス)。Conceptually, think of this event (and other mouse-button events on UIElement) to be a mouse "service" (with the service definition provided by the Mouse class). イベントは、イベント データの元のマウス イベントのマウス ボタンの状態 (左、右、上下) を確認する必要がないという利便性を追加します。The event adds the convenience of not needing to check the mouse button states (left-right, up-down) of the original mouse events in the event data. 非標準のボタンの状態のチェックより高度なシナリオを使用する必要があります、APIAPIs上、Mouseものではなくクラスに対するUIElementします。For more advanced scenarios, such as checking for states of non-standard buttons, you might need to use the APIAPIs on the Mouse class rather than those on UIElement.


一部のコントロール クラスには、固有のクラスのマウス ボタンのイベント処理があります。Some control classes might have inherent class handling for mouse button events. 左マウス ボタンを押すイベントは、クラス、コントロールの処理が最も可能性の高いイベントです。The left mouse button down event is the most likely event to have class handling in a control. 多くの場合、処理するクラスは、基になるをマークMouseクラス イベントを処理します。The class handling often marks the underlying Mouse class event as handled. イベントが処理済みマークされると、その要素にアタッチされている他のインスタンス ハンドラーは通常は発生しません。Once the event is marked handled, other instance handlers that are attached to that element are not ordinarily raised. その他のクラスまたはインスタンス ハンドラー UI ツリーのルートに向かうバブルの方向に要素にアタッチされているが通常も発生します。Any other class or instance handlers that are attached to elements in the bubbling direction towards the root in the UI tree are also not ordinarily raised.

前の重要なに記載されている問題を解決でき、それでもMouseLeftButtonDownをこれらのソリューションのいずれかを使用して処理するクラスを持つ派生クラスでイベントをマウスの左ボタンのイベント。You can resolve the issue that is outlined in the preceding Important and still receive MouseLeftButtonDown events for left mouse button down events on a derived class that has class handling by using either of these solutions:

  • ハンドラーのアタッチ、PreviewMouseDownイベントで、コントロールによって処理済みとしてマークされていません。Attach handlers for the PreviewMouseDown event, which is not marked as handled by the controls. これは、プレビュー イベントであるため、ルートがルートをトンネリングをコントロールに注意してください。Notice that because this is a preview event, the route starts at the root and tunnels down to the control.

  • コントロールのハンドラーを呼び出すことによって手続き登録AddHandlerとルーティング イベントのデータの処理としてマークされている場合でも、イベントをリッスンするハンドラーの有効な署名オプションを選択します。Register a handler on the control procedurally by calling AddHandler and choosing the signature option that enables handlers to listen for events even if they are already marked as handled in the routed event data.

ルーティングされたイベント情報Routed Event Information

識別子フィールドです。Identifier field MouseLeftButtonDownEvent
ルーティング方法Routing strategy 直接Direct
DelegateDelegate MouseButtonEventHandler
  • オーバーライドOnMouseLeftButtonDown派生クラスでは、このイベントに対するクラス処理を実装します。Override OnMouseLeftButtonDown to implement class handling for this event in derived classes.