Freezable クラス

定義

変更可能な状態と読み取り専用 (固定) の状態を持つオブジェクトを定義します。 Freezable から派生するクラスは、詳細な変更通知を提供し、変更不可にすることが可能で、自身のクローンを作成できます。

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

注釈

クラスには、 Freezable 変更またはコピーに負荷のかかるオブジェクトを使用する場合に、アプリケーションのパフォーマンスを向上させるための特別な機能が用意されています。 オブジェクトの例 Freezable を次に示します。

Freezable からの派生

から派生するクラスでは Freezable 、次の機能が得られます。

  • 特別な状態: 読み取り専用 (固定) 状態と書き込み可能な状態。

  • スレッドセーフ: 固定 Freezable されたオブジェクトは、スレッド間で共有できます。

  • 詳細な変更通知: 他のオブジェクトとは異なり DependencyObject 、オブジェクトは、 Freezable サブプロパティ値が変更されたときに変更通知を提供します。

  • 簡単な複製: Freezable クラスには、ディープ クローンを生成するいくつかのメソッドが既に実装されています。

独自のオブジェクトを使用して作成する方法の詳細について Freezable は、「 Freezable オブジェクトの概要」を参照してください。

コンストラクター

Freezable()

Freezable 派生クラスの新しいインスタンスを初期化します。

プロパティ

CanFreeze

オブジェクトを変更不可能にできるかどうかを示す値を取得します。

DependencyObjectType

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

(継承元 DependencyObject)
Dispatcher

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

(継承元 DispatcherObject)
IsFrozen

オブジェクトが変更可能かどうかを示す値を取得します。

IsSealed

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

(継承元 DependencyObject)

メソッド

CheckAccess()

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

(継承元 DispatcherObject)
ClearValue(DependencyProperty)

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

(継承元 DependencyObject)
ClearValue(DependencyPropertyKey)

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

(継承元 DependencyObject)
Clone()

Freezable の変更可能な複製を作成し、オブジェクトの値の詳細コピーを作成します。 このメソッドは、オブジェクトの依存関係プロパティをコピーするときに式をコピーしますが (コピーされた式は解決されなくなる場合があります)、アニメーションやその現在の値はコピーしません。

CloneCore(Freezable)

基本 (アニメーション化されていない) プロパティ値を使用して、インスタンスを、指定した Freezable の複製 (詳細コピー) にします。

CloneCurrentValue()

Freezable の現在の値を使用して、変更可能な複製 (詳細コピー) を作成します。

CloneCurrentValueCore(Freezable)

現在のプロパティ値を使用して、インスタンスを、指定した Freezable の変更可能な複製 (詳細コピー) にします。

CoerceValue(DependencyProperty)

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

(継承元 DependencyObject)
CreateInstance()

Freezable クラスの新しいインスタンスを初期化します。

CreateInstanceCore()

派生クラスで実装された場合、Freezable 派生クラスの新しいインスタンスを作成します。

Equals(Object)

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

(継承元 DependencyObject)
Freeze()

現在のオブジェクトを変更不可能にし、その IsFrozen プロパティを true に設定します。

Freeze(Freezable, Boolean)

isChecking パラメーターが true の場合、このメソッドは、指定した Freezable を変更不可能な状態にできるかどうかを示します。 isChecking パラメーターが false の場合、このメソッドは、指定した Freezable を変更不可能な状態にすることを試み、操作が成功したかどうかを示します。

FreezeCore(Boolean)

Freezable オブジェクトを変更不可能な状態にするか、変更不可能な状態にできるかどうかをテストします。

GetAsFrozen()

基本プロパティ値 (アニメーション化されていない値) を使用して、Freezable の 固定されたコピーを作成します。 コピーが固定されているため、参照によって任意の固定されたサブオブジェクトがコピーされます。

GetAsFrozenCore(Freezable)

基本プロパティ値 (アニメーション化されていない値) を使用して、インスタンスを、指定した Freezable の固定された複製にします。

GetCurrentValueAsFrozen()

現在のプロパティ値を使用して、Freezable の固定されたコピーを作成します。 コピーが固定されているため、参照によって任意の固定されたサブオブジェクトがコピーされます。

GetCurrentValueAsFrozenCore(Freezable)

現在のインスタンスを、指定した Freezable の固定された複製にします。 オブジェクトに、アニメーション化された依存関係プロパティが存在する場合、現在アニメーション化されている値がコピーされます。

GetHashCode()

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

(継承元 DependencyObject)
GetLocalValueEnumerator()

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

(継承元 DependencyObject)
GetType()

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

(継承元 Object)
GetValue(DependencyProperty)

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

(継承元 DependencyObject)
InvalidateProperty(DependencyProperty)

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

(継承元 DependencyObject)
MemberwiseClone()

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

(継承元 Object)
OnChanged()

現在の Freezable オブジェクトの変更時に呼び出されます。

OnFreezablePropertyChanged(DependencyObject, DependencyObject)

設定されたばかりの DependencyObjectType データ メンバーに対して、適切なコンテキスト ポインターが確立されていることを確認します。

OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

このメンバーは、Windows Presentation Foundation (WPF) インフラストラクチャをサポートし、コードから直接使用することを意図したメンバーではありません。

OnPropertyChanged(DependencyPropertyChangedEventArgs)

OnPropertyChanged(DependencyPropertyChangedEventArgs)DependencyObject 実装をオーバーライドして、さらに型 Freezable の変化する依存関係プロパティへの応答として任意の Changed ハンドラーも呼び出します。

ReadLocalValue(DependencyProperty)

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

(継承元 DependencyObject)
ReadPreamble()

Freezable が有効なスレッドからアクセスされていることを確認します。 Freezable の継承側は、依存関係プロパティでないデータ メンバーを読み取る任意の API の開始時に、このメソッドを呼び出す必要があります。

SetCurrentValue(DependencyProperty, Object)

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

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

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

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

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

(継承元 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

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

(継承元 DependencyObject)
ToString()

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

(継承元 Object)
VerifyAccess()

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

(継承元 DispatcherObject)
WritePostscript()

FreezableChanged イベントを発生させ、その OnChanged() メソッドを呼び出します。 Freezable から派生するクラスは、依存関係プロパティとして格納されていないクラス メンバーを変更するすべての API の終了時に、このメソッドを呼び出す必要があります。

WritePreamble()

Freezable が固定されておらず、有効なスレッド コンテキストからアクセスされていることを確認します。 Freezable の継承側は、依存関係プロパティでないデータ メンバーに書き込む任意の API の開始時に、このメソッドを呼び出す必要があります。

イベント

Changed

Freezable、またはこれに含まれているオブジェクトが変更されると発生します。

適用対象

スレッド セーフ

staticこの型のすべてのパブリックメンバーは、スレッドセーフです。 インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

プロパティがの場合、オブジェクトは、オブジェクトが作成され IsFrozen false Freezable たスレッドからのみアクセスできます。 別のスレッドからアクセスしようとすると、がスローさ InvalidOperationException れます。 Invokeメソッドと BeginInvoke メソッドは、適切なスレッドにマーシャリングするためのサポートを提供します。

IsFrozenプロパティがの場合 trueFreezable オブジェクトはフリースレッドです。 詳細については、「Freezable オブジェクトの概要」を参照してください。