Freezable.CloneCore(Freezable) 메서드

정의

기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 복제본(전체 복사본)으로 만듭니다.Makes the instance a clone (deep copy) of the specified Freezable using base (non-animated) property values.

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

복제할 개체입니다.The object to clone.

설명

이 메서드는 Clone 메서드는 호출 하지 않은 수 사용자 코드에서 직접 제외 하 고이 메서드를 재정의 하는 동안 기본 구현을 호출 하는 경우.This method is called by the Clone method and should not be called directly from your code, except when calling the base implementation while overriding this method. 현재 개체의 수정 가능한 복사본을 만들려면 호출 Clone 이 메서드를 직접 호출 하는 대신 합니다.To create a modifiable copy of the current object, call Clone instead of calling this method directly.

상속자 참고

파생 하는 경우 Freezable,이 메서드를 재정의 해야 할 수 있습니다.If you derive from Freezable, you may need to override this method. 재정의 하는 이유는 다음과 같습니다.Reasons to override include the following: -파생된 클래스는 종속성 속성을 통해 노출 되지 않는 데이터를 갖습니다.- Your derived class has data that is not exposed via dependency properties.

-파생 된 클래스 재정의 하 여 구현할 수 없는 추가 초기화 작업을 수행 해야 CreateInstanceCore()합니다.- Your derived class must perform extra initialization work that cannot be accomplished by simply overriding CreateInstanceCore(). 파생된 클래스에서 구현 하는 경우 예를 들어이 적용 됩니다 ISupportInitialize합니다.For example, this applies if your derived class implements ISupportInitialize.

종속성 속성의 모든 데이터를 저장 하는 추가 초기화 작업을 수행할 필요가 없습니다 클래스 재정의 하지 않아도 CloneCore(Freezable)합니다.Classes that store all their data in dependency properties and that do not need to perform extra initialization work do not need to override CloneCore(Freezable).

모든 구현이이 메서드의 기본 구현을 반드시 합니다.It is essential that all implementations call the base implementation of this method. 구현만 기본 구현에 의해 수행 되지 않는 작업을 수행 해야 합니다.Implementations should only perform work that is not performed by the default implementation. 기본 구현에는 내부 식을 비롯 한 모든 쓰기 가능한 로컬에서 설정 속성을의 전체 복사본입니다.The default implementation makes deep copies of all writable, locally set properties, including internal expressions.

개체에 데이터 바인딩된 종속성 속성이 있으면 식 복사 되지만 더 이상 확인할 수 없습니다.If the object has data-bound dependency properties, the expressions are copied but might no longer resolve. 데이터 바인딩된 개체를 복제 하는 방법에 대 한 자세한 내용은 참조 하세요. Freezable 개체 개요합니다.For more information about cloning data-bound objects, see Freezable Objects Overview. 개체에 애니메이션이 적용 된 종속성 속성이 해당 속성의 기본 (애니메이션이 적용 되지 않은) 값이 복사 됩니다.If the object has animated dependency properties, the base (non-animated) value of those properties is copied. 애니메이션은 복사 되지 않습니다.Animations are not copied.

메모는 설정 되지 않은 속성은 복사 되지 않으며 읽기 전용 속성입니다.Note that unset properties are not copied, nor are read-only properties. 이러한 속성에는 고정 된 기본값이 있으면 Freezable, 속성 값의 수정 가능한 복제본에서 고정 된 상태로 유지 됩니다.If such a property has a default value that is a frozen Freezable, that property value remains frozen in the otherwise modifiable clone.

다음은이 메서드에 대 한 예상 되는 동작을 요약:The following list summarizes the expected behavior for this method: 모든 복사본을 포함 하는 생성 된 복사- Freezable 하위 개체입니다.- The copy produced contains copies of all Freezable sub-objects.

-설정 및 읽기 전용 속성 복사 되지 않습니다.- Unset and read-only properties are not copied.

식 복사 됩니다.- Expressions are copied.

-None 이러한 하위 개체는 생성 시 고정 됩니다.- None of these sub-objects are frozen on creation.

자체-복사가 고정 되는 것은 아닙니다.- The copy itself is not frozen.

-애니메이션은 복사 되지 않습니다.- Animations are not copied.

속성-기본 값은 복사, 유효 하지 않음 애니메이션된 값입니다.- Only property base values are copied, not current animated values.

적용 대상

추가 정보