Freezable.CloneCore(Freezable) メソッド

定義

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

protected:
 virtual void CloneCore(System::Windows::Freezable ^ sourceFreezable);
protected virtual void CloneCore (System.Windows.Freezable sourceFreezable);
abstract member CloneCore : System.Windows.Freezable -> unit
override this.CloneCore : System.Windows.Freezable -> unit
Protected Overridable Sub CloneCore (sourceFreezable As Freezable)

パラメーター

sourceFreezable
Freezable

複製する対象のオブジェクト。

注釈

このメソッドは、メソッドによって呼び出され Clone ます。このメソッドをオーバーライドするときに基本実装を呼び出す場合を除き、コードから直接呼び出すことはできません。 現在のオブジェクトの変更可能なコピーを作成するには、 Clone このメソッドを直接呼び出すのではなく、を呼び出します。

注意 (継承者)

から派生する場合は Freezable 、このメソッドのオーバーライドが必要になることがあります。 オーバーライドする理由は次のとおりです。 -派生クラスに依存関係プロパティを介して公開されていないデータが含まれています。

-派生クラスでは、単にをオーバーライドするだけでは実現できない追加の初期化作業を実行する必要があり CreateInstanceCore() ます。 たとえば、これは、派生クラスがを実装している場合に適用さ ISupportInitialize れます。

依存関係プロパティにすべてのデータを格納し、追加の初期化作業を実行する必要がないクラスは、をオーバーライドする必要はありません CloneCore(Freezable)

すべての実装がこのメソッドの基本実装を呼び出すことが不可欠です。 実装では、既定の実装では実行されない作業のみを実行する必要があります。 既定の実装では、内部式を含む、すべての書き込み可能なローカル設定プロパティの詳細コピーが作成されます。

オブジェクトにデータバインドの依存関係プロパティがある場合、式はコピーされますが、解決できなくなる可能性があります。 データバインドオブジェクトの複製の詳細については、「 Freezable オブジェクトの概要」を参照してください。 オブジェクトにアニメーションの依存関係プロパティがある場合は、それらのプロパティの基本 (アニメーション化されていない) 値がコピーされます。 アニメーションはコピーされません。

未設定のプロパティはコピーされず、読み取り専用プロパティでもありません。 このようなプロパティの既定値が固定されている場合 Freezable 、そのプロパティ値は変更可能な複製でも固定されたままになります。

次の一覧は、このメソッドの予想される動作をまとめたものです。 -生成されたコピーには、すべてのサブオブジェクトのコピーが含まれ Freezable ます。

-未設定のプロパティと読み取り専用プロパティはコピーされません。

-式がコピーされます。

-これらのサブオブジェクトは作成時に固定されません。

-コピー自体は固定されていません。

-アニメーションはコピーされません。

-現在のアニメーション値ではなく、プロパティの基本値のみがコピーされます。

適用対象

こちらもご覧ください