UIElement.OnPreviewMouseLeftButtonDown(MouseButtonEventArgs) 方法

定義

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

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

參數

e
MouseButtonEventArgs

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

備註

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

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

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