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

HitTestFilterBehavior 列挙型

 

公開日: 2016年10月

ヒット テスト フィルターのコールバック メソッドでヒット テストの戻り値の動作を指定します。

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

public enum HitTestFilterBehavior

メンバー名説明
Continue

現在の Visual およびその子孫に対してヒット テストを行います。

ContinueSkipChildren

子孫ではなく、現在の Visual に対してヒット テストを行います。

ContinueSkipSelf

現在の Visual に対してはヒット テストを行いませんが、その子孫に対してヒット テストを行います。

ContinueSkipSelfAndChildren

現在の Visual にもその子孫にもヒット テストを行いません。

Stop

現在の Visual 対するヒット テストを停止します。

ヒット テスト フィルターのコールバックの戻り値は、 HitTestFilterBehavior, 、ヒット テストのビジュアル ツリーを処理するときに、アクションの種類を実行する必要がありますが決定します。 たとえば、ヒット テスト フィルターのコールバックが返す ContinueSkipSelfAndChildren, 、ヒット テスト結果の評価から現在のビジュアル オブジェクトとその子孫を削除することができます。

System_CAPS_noteメモ

オブジェクトのビジュアル ツリーの簡略化すると、ヒット テスト結果の評価段階で必要な処理量が小さくなります。

ヒット テスト フィルターを使用したビジュアル ツリーの簡略化

ビジュアル ツリーの簡略化

次の例では、取得する方法について、 HitTestFilterBehavior ヒット テスト フィルターのコールバック メソッドからの値。 この場合、フィルターは、ラベルとその子孫をスキップし、その他のすべてのヒット テストします。

// Filter the hit test values for each object in the enumeration.
public HitTestFilterBehavior MyHitTestFilter(DependencyObject o)
{
    // Test for the object value you want to filter.
    if (o.GetType() == typeof(Label))
    {
        // Visual object and descendants are NOT part of hit test results enumeration.
        return HitTestFilterBehavior.ContinueSkipSelfAndChildren;
    }
    else
    {
        // Visual object is part of hit test results enumeration.
        return HitTestFilterBehavior.Continue;
    }
}

.NET Framework
3.0 以降で使用可能
トップに戻る
表示: