UIElement.OnPreviewMouseLeftButtonDown(MouseButtonEventArgs) 方法

定義

當未處理的 PreviewMouseLeftButtonDown 路由事件到達其路由中衍生自此類別的項目時叫用。 實作這個方法可為此事件加入類別處理。

protected:
 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)

參數

e
MouseButtonEventArgs

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

備註

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

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

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

適用於