UIElement.OnMouseLeftButtonDown(MouseButtonEventArgs) 方法

定義

當這個項目上引發未處理的 MouseLeftButtonDown 路由事件時叫用。 實作這個方法可為此事件加入類別處理。

C#
protected virtual void OnMouseLeftButtonDown(System.Windows.Input.MouseButtonEventArgs e);

參數

e
MouseButtonEventArgs

包含事件資料的 MouseButtonEventArgs。 事件資料會報告滑鼠左鍵已按下。

備註

MouseLeftButtonDown 事件似乎會移動反升路線,但實際上會以間接方式移動。 Mouse.MouseDown 是泡泡路由傳送的基礎事件,而且每個沿著事件路由使用 UIElement 相同的處理來引發直接路由事件 MouseLeftButtonDown 。 雖然您可以針對此元素的目的將事件標示 MouseLeftButtonDown 為已處理,但已處理的狀態不會依循事件路由的其他元素。 不過,您可能想要將事件標示為已處理,以防止一般實例處理常式 (未指定 handledEventsToo) 叫用。

UIElement 一般滑鼠事件處理的預設實作會接 Mouse.MouseDown 聽,並將其轉換成適當的本機事件。 如果您想要覆寫此邏輯,您必須建立衍生類別。 在衍生類別的靜態建構函式中,註冊 的 Mouse.MouseDown 替代類別處理常式。 您無法覆寫 OnMouseLeftButtonDown 來變更 的 UIElement 滑鼠處理行為。

或者,您可以覆寫這個方法,以變更特定滑鼠狀態的事件處理。 您是否選擇呼叫基底實作,取決於您的案例。 無法呼叫基底會停用上階類別上預期叫 OnMouseLeftButtonDown 用 之滑鼠事件的預設輸入處理。 例如,您可以在衍生類別中衍生和 Button 覆寫 OnMouseLeftButtonDown ,而不呼叫基底實作;不過,此覆寫會 Click 停用事件。

適用於

產品 版本
.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, 10