このドキュメントはアーカイブされており、メンテナンスされていません。

UIElement.MouseLeftButtonDown イベント

マウス ポインタがこの要素上にあるときにマウスの左ボタンが押されると発生します。

名前空間: System.Windows
アセンブリ: PresentationCore (presentationcore.dll 内)
XML 名前空間 :  http://schemas.microsoft.com/winfx/2006/xaml/presentation

public event MouseButtonEventHandler MouseLeftButtonDown
/** @event */
public final void add_MouseLeftButtonDown (MouseButtonEventHandler value)

/** @event */
public final void remove_MouseLeftButtonDown (MouseButtonEventHandler value)

JScript では、このクラスで定義されているイベントを処理できます。ただし、独自のイベントは定義できません。
<object MouseLeftButtonDown="MouseButtonEventHandler" .../>

識別子フィールド

MouseLeftButtonDownEvent

ルーティング方法

Direct

デリゲート

MouseButtonEventHandler

  • このイベントのクラス処理を派生クラスに実装するには、OnMouseLeftButtonDown をオーバーライドします。

このルーティング イベントは、要素ツリーを通じてバブル ルートに従うように思われますが、実際には直接ルーティング イベントであり、これは各 UIElement により要素ツリーに沿って発生および再発生します。

このイベントは、基になる Mouse.MouseDown イベントのマウス ボタン固有の情報を報告する複数の関連イベントの 1 つです。MouseDown イベントはアタッチされたイベントであり、イベント ルート上で各要素によって処理されます。

このイベントのイベント データは、基になる Mouse.MouseDown イベントのイベント データを公開します。このイベントがイベント ルート上で処理済としてマークされていても、マウス ボタン固有イベントは発生します。ただし、イベントのリスナであるためには、既に処理済としてマークされているイベントを処理するオプションを使用して明示的に AddHandler を呼び出すことにより、マウス ボタン固有イベントのハンドラを追加する必要があります。MouseLeftButtonDown を処理済みとしてマークする場合、基本的に、ルート上のすべてのリスナに対し、関連するすべてのイベントについて、Mouse.MouseDown を処理済みとしてマークすることになります。これには、MouseDoubleClick など、クラス ハンドラによって生成されるイベントが該当する場合があります。

概念上、このイベント (および UIElement のその他のマウス ボタン イベント) は、(Mouse クラスによって提供されるサービス定義を持つ) マウス "サービス" と考えることができます。このイベントには、イベント データに含まれる元のマウス イベントのマウス ボタン状態 (左ボタン/右ボタン、押されていない/押された状態) をチェックする必要がないという利点があります。非標準ボタンの状態のチェックなど、より高度なシナリオでは、UIElement ではなく Mouse クラスで API を使用することが必要になる場合もあります。

メモ重要 :

一部のコントロール クラスには、マウス ボタン イベントに対する固有のクラス処理が存在する場合があります。"マウスの左ボタンを押す" イベントは、コントロール内でクラス処理が行われる可能性の最も高いイベントです。多くの場合、クラス処理では、基になる Mouse クラスのイベントを処理済みとしてマークします。イベントが処理済みとしてマークされると、その要素にアタッチされた他のインスタンス ハンドラは、通常呼び出されません。UI ツリーのルートに向かうバブル方向で要素にアタッチされた他のすべてのクラス ハンドラまたはインスタンス ハンドラも、通常呼び出されることはありません。

次の方法のいずれかを使用することにより、前の「重要」で説明されている問題を解決し、クラス処理を含む派生クラスの "マウスの左ボタンを押す" イベントに対する MouseLeftButtonDown イベントを受け取ることができます。

  • コントロールによって処理済みとしてマークされていない PreviewMouseDown イベントのハンドラをアタッチします。これはプレビュー イベントであるため、経路はルートで始まり、コントロールまでトンネル ダウンします。

  • AddHandler を呼び出し、ルーティング イベント データでイベントが既に処理済みとしてマークされている場合でも、ハンドラがイベントをリッスンできるようにするシグネチャ オプションを選択して、プロシージャでハンドラをコントロールに登録します。

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

.NET Framework

サポート対象 : 3.0
表示: