この記事の英語版を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

UIElement.MouseMove イベント

マウス (またはスタイラス) が UIElement の上にあるときに (または UIElement がマウス キャプチャを保持しているときに) その座標位置が変更されると発生します。

名前空間:  System.Windows
アセンブリ :  System.Windows (System.Windows.dll 内)

public event MouseEventHandler MouseMove
<uiElement MouseMove="eventhandler"/>

MouseButtonEventHandler に基づくハンドラーを使用して、このイベントを処理します。 マウス イベントの処理方法の詳細については、「マウス サポート」を参照してください。

MouseMove のハンドラーのコードを記述するときは注意が必要です。 MouseMove は、ユーザーがアプリケーションを操作しているときや、ハンドラーの対象となる特定のオブジェクト領域を操作しているときに、頻繁に発生します。 MouseMove ハンドラーで計算処理やグラフィック処理を伴うコードを使用すると、マウス ポインター (またはスタイラス ポインター) の描画動作やアプリケーションの一般的な動作が遅くなる場合があります。

MouseMove イベントは、CanvasTextBlockRectangle などの UIElement 派生クラスで処理できます。

MouseMove イベントは、マウス ポインター (またはスタイラス) をオブジェクトのコンテンツ領域を越えて移動する操作の応答として発生します。 マウス ポインター (またはスタイラス) がオブジェクトのコンテンツ領域に入った場合、オブジェクトの MouseMove イベントの前に MouseEnter イベントが発生します。 マウス (またはスタイラス) を実際に移動しなかった場合、MouseMove イベントは発生しません。 たとえば、マウス ポインター (またはスタイラス) が静止している場合、MouseMove は発生せず、MouseMove ハンドラーを持つオブジェクトは位置をアニメーション化するか、マウス ポインターの下へ移動します。

マウスをキャプチャした UIElement は、マウス (またはスタイラス) のすべての動作 (Silverlight コンテンツ領域の外側の動作を含む) に対して MouseMove イベントを受け取ります。 マウス サポート」の「マウス キャプチャ」を参照してください。

ルーティング イベントの動作

MouseMove イベントはバブル イベントです。 これは、オブジェクト ツリーの親子関係によって関連付けられたオブジェクトのシーケンス用に複数の MouseMove イベント ハンドラーが登録されている場合、その親子関係の各オブジェクトによってイベントが受け取られることを意味します。 "バブル" とは、イベントが、入力条件を直接受け取るオブジェクトから始まり、オブジェクト ツリーを順に上っていくようすを表しています。 バブル イベントの場合、イベント ハンドラーに使用できる sender は、イベントが処理されるオブジェクトを識別します。そのオブジェクトは、イベントを開始する入力条件を実際に受け取ったオブジェクトであるとは限りません。 イベントを開始したオブジェクトを見つけるには、イベントの MouseEventArgs イベント データの OriginalSource 値を使用します。

MouseMove と OnMouseMove

MouseMove を継承するコントロールは、OnMouseMove メソッドをオーバーライドして、すべてのインスタンスのハンドラーとしてイベントを処理できます。 このイベントを直接処理する場合と同様に、Handled プロパティは使用できないため、OnMouseMove の実装で、Handled の手法を使用して以降のイベント処理を抑制することはできません。 ただし、表示状態を設定したり、マウスに関連する状態プロパティや動作を設定したりするために OnMouseMove を使用することはできます。 たとえば ButtonBase では、ボタン クリックをキャンセルできるようにするより大きな動作セットの一部として OnMouseMove が実装されています (ユーザーがボタンをマウスでクリックした後に、マウス ポインターをそのボタンの境界の外側に移動すると、クリックは呼び出されません)。 詳細については、OnMouseMove のトピックを参照してください。

Silverlight

サポート対象 : 5、4、3

Silverlight for Windows Phone

サポート対象 : Windows Phone OS 7.1、Windows Phone OS 7.0

Silverlight でサポートされるオペレーティング システムの詳細については、「サポートされているオペレーティング システムとブラウザー」を参照してください。

コミュニティの追加

追加
表示: