Freezable.CloneCurrentValueCore(Freezable) 메서드

정의

현재 속성 값을 사용하여 이 인스턴스를 지정된 Freezable의 수정 가능한 클론(전체 복사본)으로 만듭니다.Makes the instance a modifiable clone (deep copy) of the specified Freezable using current property values.

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

매개 변수

sourceFreezable
Freezable

복제할 Freezable입니다.The Freezable to be cloned.

설명

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

종속성 속성의 모든 데이터를 저장 하는 추가 초기화 작업을 수행할 필요가 없습니다 클래스 재정의 하지 않아도 CloneCurrentValueCore(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 CloneCurrentValueCore(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. 식 (예: 데이터 바인딩)를 사용 하 여 종속성 속성을 포함 하는 개체, 식 자체 아닌 식의 현재 값을 복사 됩니다.If the object contains dependency properties with expressions (such as a data binding), the current value of the expression is copied but not the expression itself.

개체에서 종속성 속성에 애니메이션 효과가 적용 하는 경우에 해당 속성의 현재 애니메이션된 값을 복사 되 되지만 애니메이션 되지 않습니다.If the object has animated dependency properties, the current animated value of those properties is copied, but the animations are not.

메모는 설정 되지 않은 속성은 복사 되지 않으며 읽기 전용 속성입니다.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.

-속성 애니메이션이 적용 되어 있는 경우 해당 현재 값은 복사 이지만 애니메이션 자체에 아닙니다.- If a property is animated, its current value is copied, but the animation itself is not.

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

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

적용 대상

추가 정보