UIElement.OnPreviewMouseRightButtonDown(MouseButtonEventArgs) 方法

定義

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

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

參數

e
MouseButtonEventArgs

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

備註

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

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

或者,您可以覆寫這個方法,以變更特定滑鼠狀態的事件處理。 您是否選擇呼叫基底實作,取決於您的案例。 無法呼叫基底會停用上階類別上預期叫 OnPreviewMouseRightButtonDown 用 之滑鼠事件的預設輸入處理。 例如,您可以在衍生類別中衍生和 Control 覆寫 OnPreviewMouseRightButtonDown ,而不呼叫基底;不過,此覆寫會停用控制項上的操作功能表服務,這是預設行為的一部分 Control

適用於