UIElement.OnMouseLeftButtonDown(MouseButtonEventArgs) 方法

定義

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

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

參數

e
MouseButtonEventArgs

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

備註

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

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

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

適用於