Share via


UIElement3D.OnMouseLeftButtonDown(MouseButtonEventArgs) 方法

定义

当此元素引发未处理的 MouseLeftButtonDown 路由事件时调用。 实现此方法可为此事件添加类处理。

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

参数

e
MouseButtonEventArgs

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

注解

MouseLeftButtonDown 事件看起来是一条冒泡的路线,但实际上以间接方式行驶。 Mouse.MouseDown 是气泡路由的基础事件,事件 UIElement3D 路由中的每个事件都使用相同的处理来引发直接路由事件 MouseLeftButtonDown。 尽管可以出于此元素的目的将 MouseLeftButtonDown 事件标记为已处理,但已处理状态不会持续到事件路由中的其他元素。 但是,你可能希望将事件标记为已处理,以防止调用未指定 handledEventsToo) 的常规实例处理程序 (。

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

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

适用于