Visual クラス

定義

WPF でヒット テスト、座標変換、境界ボックス計算などの描画をサポートします。

public ref class Visual abstract : System::Windows::DependencyObject
public abstract class Visual : System.Windows.DependencyObject
type Visual = class
    inherit DependencyObject
type Visual = class
    inherit DependencyObject
    interface DUCE.IResource
Public MustInherit Class Visual
Inherits DependencyObject
継承
派生

注釈

Visual クラスは、すべての FrameworkElement オブジェクトの派生元となる基本抽象クラスです。 また、WPF で新しいコントロールを作成するためのエントリポイントとしても機能します。また、多くの点で、Win32 アプリケーションモデルのウィンドウハンドル (HWND) と同等のものと考えることができます。

Visualオブジェクトは、レンダリングをサポートする主要な役割を持つ WPF のコアオブジェクトです。 やなどのユーザーインターフェイスコントロールは、 Button TextBox クラスから派生 Visual し、定義されたプロパティを使用して Visual レンダリングデータを保持します。 オブジェクトでは Visual 、次の機能がサポートされています。

  • 出力表示: ビジュアルの、シリアル化された永続的な描画内容をレンダリングします。

  • 変換: ビジュアルで変換を実行します。

  • クリッピング: ビジュアルのクリッピング領域をサポートします。

  • ヒットテスト: 指定された座標 (ポイント) またはジオメトリがビジュアルの境界内に含まれているかどうかを確認します。

  • 境界ボックスの計算: ビジュアルの四角形領域を決定します。

アーキテクチャ上、オブジェクトには、 Visual 次のような、レンダリングにすぐに関連しない他のアプリケーション開発要件/WPF 機能のサポートは含まれていません。

  • イベント処理

  • レイアウト

  • スタイル

  • データ バインディング

  • グローバリゼーション

Visual は、さらにクラスを派生させることができるパブリック抽象クラスとして提供されます。 次の図は、WPF アーキテクチャで定義されている既存のビジュアルオブジェクトの階層を示しています。

Visual オブジェクトから派生したクラスのダイアグラム
Visual クラスの階層構造

場合によっては、protected として定義されているメンバー Visual は、派生クラスに類似した名前を持つ、より簡単にアクセスできるメンバーとして公開され UIElement ます。

詳しくは、「WPF グラフィックス レンダリングの概要」をご覧ください。

には、 Visual 制限された数のレベルがあります。 以前のバージョンの .NET Framework では、この最大深度は255でした。 ビジュアルツリーに多数のレベルがあるレイアウトでは、この制限は不十分です。

.NET Framework 4 では、の最大の深さは Visual 2047 であり、これにより、より深いビジュアルツリーが可能になります。 ほとんどのアプリケーションでは、多数のレベルを走査するのに十分なスタック領域がないため、結果は StackOverflowException レイアウト中になります。 既定のスタックサイズの場合、この例外は通常、ツリーの深さが約800の場合にスローされます。これは、入れ子になったオブジェクトの約190に対応 TreeViewItem します。

この例外がアプリケーションによってスローされ、より深い視覚ツリーが必要な場合は、アプリケーションのスタックサイズを増やすことができます。 スタックのサイズを増やすには、コンパイル時に/STACK オプションを使用するか、EDITBIN ユーティリティを使用します。 スタックサイズを大きくすると、アプリケーションのパフォーマンスに影響を与える可能性があります。 詳細については、「 Stack の割り当て 」および「 EDITBIN オプション」を参照してください。

コンストラクター

Visual()

Visual クラスから派生したオブジェクトの基本の初期化を行います。

プロパティ

DependencyObjectType

DependencyObjectTypeこのインスタンスの CLR 型をラップするを取得します。

(継承元 DependencyObject)
Dispatcher

この Dispatcher が関連付けられている DispatcherObject を取得します。

(継承元 DispatcherObject)
IsSealed

このインスタンスが現在シールされている (読み取り専用である) かどうかを示す値を取得します。

(継承元 DependencyObject)
VisualBitmapEffect
互換性のために残されています。
互換性のために残されています。

BitmapEffectVisual 値を取得または設定します。

VisualBitmapEffectInput
互換性のために残されています。
互換性のために残されています。

BitmapEffectInputVisual 値を取得または設定します。

VisualBitmapScalingMode

BitmapScalingModeVisual を取得または設定します。

VisualCacheMode

Visual のキャッシュされた表現を取得または設定します。

VisualChildrenCount

Visual の子要素の数を取得します。

VisualClearTypeHint

ClearTypeHint での ClearType のレンダリング方法を決定する Visual を取得または設定します。

VisualClip

Visual 値としての Geometry のクリップ領域を取得または設定します。

VisualEdgeMode

Visual のエッジ モードを EdgeMode 値として取得または設定します。

VisualEffect

Visual に適用するビットマップ効果を取得または設定します。

VisualOffset

ビジュアル オブジェクトのオフセット値を取得または設定します。

VisualOpacity

Visual の不透明度を取得または設定します。

VisualOpacityMask

Brush の不透明マスクを表す Visual 値を取得または設定します。

VisualParent

ビジュアル オブジェクトのビジュアル ツリーの親を取得します。

VisualScrollableAreaClip

Visual のクリップ対象のスクロール可能な領域を取得または設定します。

VisualTextHintingMode

VisualTextHintingMode を取得または設定します。

VisualTextRenderingMode

VisualTextRenderingMode を取得または設定します。

VisualTransform

TransformVisual 値を取得または設定します。

VisualXSnappingGuidelines

X 座標 (垂直) ガイドライン コレクションを取得または設定します。

VisualYSnappingGuidelines

Y 座標 (水平) ガイドライン コレクションを取得または設定します。

メソッド

AddVisualChild(Visual)

2 つのビジュアル間の親子リレーションシップを定義します。

CheckAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。

(継承元 DispatcherObject)
ClearValue(DependencyProperty)

プロパティのローカル値をクリアします。 クリアするプロパティは DependencyProperty 識別子で指定されます。

(継承元 DependencyObject)
ClearValue(DependencyPropertyKey)

読み取り専用プロパティのローカル値を消去します。 消去するプロパティは、DependencyPropertyKey で指定します。

(継承元 DependencyObject)
CoerceValue(DependencyProperty)

指定した依存関係プロパティの値を強制します。 これは、呼び出し元の DependencyObject の依存関係プロパティのプロパティ メタデータで指定されている CoerceValueCallback 関数を呼び出すことによって実現されます。

(継承元 DependencyObject)
Equals(Object)

指定した DependencyObject が現在の DependencyObject と等しいかどうかを判断します。

(継承元 DependencyObject)
FindCommonVisualAncestor(DependencyObject)

2 つのビジュアル オブジェクトの共通の先祖を返します。

GetHashCode()

この DependencyObject のハッシュ コードを取得します。

(継承元 DependencyObject)
GetLocalValueEnumerator()

どの依存関係プロパティがこの DependencyObject 上にローカルに設定された値を持つかを確認するための、専用の列挙子を作成します。

(継承元 DependencyObject)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
GetValue(DependencyProperty)

DependencyObject のこのインスタンスにある依存関係プロパティの現在の有効値を返します。

(継承元 DependencyObject)
GetVisualChild(Int32)

Visual 内の指定した VisualCollection を返します。

HitTestCore(GeometryHitTestParameters)

ジオメトリ値がビジュアル オブジェクトの境界内にあるかどうかを判断します。

HitTestCore(PointHitTestParameters)

点の座標値がビジュアル オブジェクトの境界内にあるかどうかを判断します。

InvalidateProperty(DependencyProperty)

指定した依存関係プロパティの有効値を再評価します。

(継承元 DependencyObject)
IsAncestorOf(DependencyObject)

ビジュアル オブジェクトが、指定した子孫ビジュアル オブジェクトの先祖かどうかを判定します。

IsDescendantOf(DependencyObject)

ビジュアル オブジェクトが、指定した先祖ビジュアル オブジェクトの子孫かどうかを判定します。

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnDpiChanged(DpiScale, DpiScale)

このビューが表示される DPI が変更するときに呼び出されます。

OnPropertyChanged(DependencyPropertyChangedEventArgs)

この DependencyObject の依存関係プロパティの有効値が更新された場合に必ず呼び出されます。 変更された特定の依存関係プロパティは、イベント データで報告されます。

(継承元 DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

ビジュアル オブジェクトの VisualCollection が変更されると呼び出されます。

OnVisualParentChanged(DependencyObject)

ビジュアル オブジェクトの親が変更されると呼び出されます。

PointFromScreen(Point)

画面座標における Point を、Point の現在の座標系を表す Visual に変換します。

PointToScreen(Point)

Point の現在の座標系を表す Visual を、画面座標における Point に変換します。

ReadLocalValue(DependencyProperty)

ローカルの依存関係プロパティの値を返します (存在する場合)。

(継承元 DependencyObject)
RemoveVisualChild(Visual)

2 つのビジュアル間の親子リレーションシップを削除します。

SetCurrentValue(DependencyProperty, Object)

依存関係プロパティ値のソースを変更せずにその値を設定します。

(継承元 DependencyObject)
SetValue(DependencyProperty, Object)

依存関係プロパティ識別子を指定して、該当する依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
SetValue(DependencyPropertyKey, Object)

依存関係プロパティの DependencyPropertyKey 識別子で指定した読み取り専用の依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

シリアル化プロセスが、指定された依存関係プロパティの値をシリアル化する必要があるかどうかを示す値を返します。

(継承元 DependencyObject)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TransformToAncestor(Visual)

Visual からビジュアル オブジェクトの指定した Visual の先祖に座標を変換するために使用できる変換を返します。

TransformToAncestor(Visual3D)

Visual からビジュアル オブジェクトの指定した Visual3D の先祖に座標を変換するために使用できる変換を返します。

TransformToDescendant(Visual)

Visual から指定したビジュアル オブジェクトの子孫に座標を変換するために使用できる変換を返します。

TransformToVisual(Visual)

Visual から指定したビジュアル オブジェクトに座標を変換するために使用できる変換を返します。

VerifyAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。

(継承元 DispatcherObject)

適用対象

こちらもご覧ください