ContentElement.OnPreviewMouseLeftButtonDown(MouseButtonEventArgs) 方法

定义

当未经处理的 PreviewMouseLeftButtonDown 路由事件到达派生自此类的路由中的元素时调用。 实现此方法可为此事件添加类处理。

protected public:
 virtual void OnPreviewMouseLeftButtonDown(System::Windows::Input::MouseButtonEventArgs ^ e);
protected internal 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 Friend Overridable Sub OnPreviewMouseLeftButtonDown (e As MouseButtonEventArgs)

参数

e
MouseButtonEventArgs

MouseButtonEventArgs包含事件数据的项。 事件数据报告按下了鼠标左键。

注解

PreviewMouseLeftButtonDown 事件似乎行驶隧道路线,但实际上以间接方式行驶。 Mouse.PreviewMouseDown 是隧道路由的基础事件,每个 ContentElement 事件路由都使用相同的处理来引发直接路由事件 PreviewMouseLeftButtonDown。 尽管可以将此事件标记为 PreviewMouseLeftButtonDown 处理此元素,但已处理状态不会延续到事件路由中的其他元素。 但是,你可能希望将事件标记为已处理,以防止调用常规实例处理程序(未指定 handledEventsToo)。

侦听ContentElement中的Mouse.PreviewMouseDown常规鼠标事件处理的默认实现,并将其转换为适当的本地事件。 如果要重写此逻辑,则必须创建派生类。 在派生类的静态构造函数中,注册 Mouse.PreviewMouseDown一个备用类处理程序。 不能通过重写ContentElement来更改鼠标处理行为OnPreviewMouseLeftButtonDown

或者,可以重写此方法以更改特定鼠标状态的事件处理。 是否选择调用基本实现取决于你的方案。 未能调用基会禁用上级类上同时需要调用 OnPreviewMouseLeftButtonDown的鼠标事件的默认输入处理。 例如,可以在派生类中派生 Button 并重写 OnPreviewMouseLeftButtonDown ,而无需调用基实现;但是,此重写将禁用该 Click 事件。

适用于