UIElement.MouseLeftButtonDown 事件

定義

滑鼠指標在此元素上方且按下滑鼠左按鈕時發生。

C#
public event System.Windows.Input.MouseButtonEventHandler MouseLeftButtonDown;

事件類型

實作

備註

雖然這個 路由事件 似乎遵循元素樹狀結構中的反升路由,但它實際上是透過每個 UIElement 沿著專案樹狀結構引發並重新建立的直接路由事件。

此事件是數個相關事件之一,可報告基礎 Mouse.MouseDown 事件的滑鼠按鍵特定專案,這是每個專案沿著事件路由處理的附加事件。

此事件的事件資料會公開基礎 Mouse.MouseDown 事件的事件資料。 如果該事件標示為沿著事件路由處理,仍會引發滑鼠按鍵特定事件;不過,必須藉由明確呼叫 AddHandler 來新增滑鼠按鍵特定事件的處理常式,以及處理已標示為已處理的事件的選項,才能成為事件的接聽程式。 如果您標示 MouseLeftButtonDown 已處理,基本上會 Mouse.MouseDown 針對路由上的所有進一步接聽程式,以及所有相關事件標示。 這可能包括類別處理常式產生的事件,例如 MouseDoubleClick

在概念上,請將此事件 (和其他滑鼠按鍵事件 UIElement) 為滑鼠「服務」, (類別所提供的 Mouse 服務定義) 。 事件會增加不需要檢查滑鼠按鍵狀態的便利性, (事件資料中原始滑鼠事件的左下) 。 如需更進階的案例,例如檢查非標準按鈕的狀態,您可能需要在 類別上使用 API,而不是 在 上使用 MouseUIElement

重要

某些控制項類別可能有滑鼠按鍵事件的固有類別處理。 滑鼠左鍵向下事件是控制項中具有類別處理的最可能事件。 類別處理通常會將基礎 Mouse 類別事件標示為已處理。 事件標示為已處理之後,通常不會引發附加至該專案的其他實例處理常式。 附加至 UI 樹狀結構根目錄之元素的任何其他類別或實例處理常式,通常也不會引發。

您可以解決上述 [重要] 中所述的問題,而且仍會使用下列其中一個解決方案,在衍生類別上接收 MouseLeftButtonDown 滑鼠左鍵向下事件的事件:

  • 附加事件的處理常式,此處理程式 PreviewMouseDown 未標示為控制項所處理。 請注意,因為這是預覽事件,所以路由會從根目錄開始,並向下通道至控制項。

  • 在控制項上註冊處理常式,方法是呼叫 AddHandler 並選擇簽章選項,讓處理常式能夠接聽事件,即使它們已經標示為路由事件資料中已處理。

路由事件資訊

識別碼欄位 MouseLeftButtonDownEvent
路由策略 直接
代理人 MouseButtonEventHandler

適用於

產品 版本
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

另請參閱