Control.OnPointerExited(PointerRoutedEventArgs) メソッド

定義

PointerExited イベントが発生する前に呼び出されます。

protected:
 virtual void OnPointerExited(PointerRoutedEventArgs ^ e) = OnPointerExited;
void OnPointerExited(PointerRoutedEventArgs const& e);
protected virtual void OnPointerExited(PointerRoutedEventArgs e);
function onPointerExited(e)
Protected Overridable Sub OnPointerExited (e As PointerRoutedEventArgs)

パラメーター

e
PointerRoutedEventArgs

イベントのイベント データ。

注釈

Windows 8 の動作

Windows 8 の場合、一般に、画面上のカーソル (スタイラスまたはタッチポイント) が実際に移動しなかった場合、 PointerEntered イベントは発生しません。 たとえば、マウスと画面上のカーソルが静止したままで、PointerEntered ハンドラーを持つオブジェクトの位置が画面上のカーソルの下に移動するように変換または調整されている場合、PointerEntered は起動しません。 または、ポップアップやポップアップなどの要素が消え、ポインターが新しい要素の上に移動した (ただし、ポインターがまだ移動していない) 場合、 PointerEntered は起動しません。 これに関連するのは、 PointerExited 動作です。 たとえば、ポップアップがプログラムで無視された場合、ポインターが無視の原因として移動しなかった場合、 PointerExited は発生しません。 新しく表示された要素の上をポインターが移動しても PointerEntered イベントが発生しますが、それが発生するかどうかはユーザーの責任であり、無視の瞬間ではなく移動時に発生します。 つまり、アプリ UI でポインター状態の決定に PointerEntered を発生させた最後の要素を使用しようとすると、Windows 8 では包括的ではなく、 PointerEnteredPointerExited がペアにならないシナリオが多数あります。 これは、PointerEntered および PointerExited をトリガーとして使用するコントロールの表示状態にも影響します。

Windows 8.1以降では、ポインターが一度に PointerEntered イベントを発生させた場合に PointerExited が発生しますが、ポインターがその要素内になくなった場合に UI 状態の変更が発生します。 これには、要素全体が消える場合が含まれます。 また、前の要素が消えたためにポインターが別の要素の上にある場合、ポインターが移動しない場合でも、その要素は PointerEntered を起動します。 プログラムによって可視性Collapsed に設定する要素は、要素が UI から消える可能性がある方法の 1 つであり、Windows 8.1の動作はこれを考慮し、新しく表示された要素の **Collapsed ** 要素と PointerEntered に対して PointerExited が発生します。

アプリ コードを Windows 8 から Windows 8.1に移行する場合は、この動作の変更を考慮する必要があります。これは、PointerExitedPointerEntered が発生する前に発生しなかった場合に発生するためです。

Windows 8 用にコンパイルしたアプリは、Windows 8.1 上で実行しても Windows 8 のときと同じ動作になります。

適用対象

こちらもご覧ください