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 개체 개요를 참조하세요.

생성자

Name Description
Freezable()

파생 클래스의 새 인스턴스를 Freezable 초기화합니다.

속성

Name Description
CanFreeze

개체를 수정할 수 없게 만들 수 있는지 여부를 나타내는 값을 가져옵니다.

DependencyObjectType

이 인스턴스의 DependencyObjectType CLR 형식을 래핑하는 값을 가져옵니다.

(다음에서 상속됨 DependencyObject)
Dispatcher

연결된 이 값을 DispatcherDispatcherObject 가져옵니다.

(다음에서 상속됨 DispatcherObject)
IsFrozen

개체를 현재 수정할 수 있는지 여부를 나타내는 값을 가져옵니다.

IsSealed

이 인스턴스가 현재 봉인되어 있는지 여부를 나타내는 값을 가져옵니다(읽기 전용).

(다음에서 상속됨 DependencyObject)

메서드

Name Description
CheckAccess()

호출 스레드에 이 DispatcherObject액세스 권한이 있는지 여부를 확인합니다.

(다음에서 상속됨 DispatcherObject)
ClearValue(DependencyProperty)

속성의 로컬 값을 지웁니다. 지울 속성은 식별자에 의해 DependencyProperty 지정됩니다.

(다음에서 상속됨 DependencyObject)
ClearValue(DependencyPropertyKey)

읽기 전용 속성의 로컬 값을 지웁니다. 지울 속성은 .에 DependencyPropertyKey의해 지정됩니다.

(다음에서 상속됨 DependencyObject)
Clone()

개체 값의 전체 복사본을 Freezable만드는 수정 가능한 복제본을 만듭니다. 개체의 종속성 속성을 복사할 때 이 메서드는 더 이상 확인되지 않을 수 있는 식을 복사하지만 애니메이션이나 현재 값은 복사하지 않습니다.

CloneCore(Freezable)

인스턴스를 기본(애니메이션이 아닌) 속성 값을 사용하여 지정된 Freezable 복제본(전체 복사본)으로 만듭니다.

CloneCurrentValue()

현재 값을 사용하는 수정 가능한 클론(전체 복사본) Freezable 을 만듭니다.

CloneCurrentValueCore(Freezable)

인스턴스를 현재 속성 값을 사용하여 지정된 Freezable 복제본의 수정 가능한 클론(전체 복사본)으로 만듭니다.

CoerceValue(DependencyProperty)

지정된 종속성 속성의 값을 강제 변환합니다. 이 작업은 호출 CoerceValueCallback시 종속성 속성에 대한 속성 메타데이터에 지정된 함수 DependencyObject 를 호출하여 수행됩니다.

(다음에서 상속됨 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()

using 현재 속성 값의 고정 복사본을 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, DependencyProperty)

이 멤버는 WPF(Windows Presentation Foundation) 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

OnFreezablePropertyChanged(DependencyObject, DependencyObject)

방금 설정된 데이터 멤버에 대해 적절한 컨텍스트 포인터가 DependencyObjectType 설정되었는지 확인합니다.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

형식DependencyObjectOnPropertyChanged(DependencyPropertyChangedEventArgs) 변경된 종속성 속성에 대한 응답으로 처리 Changed 기를 호출하는 구현도 재정 Freezable 의합니다.

ReadLocalValue(DependencyProperty)

종속성 속성의 로컬 값(있는 경우)을 반환합니다.

(다음에서 상속됨 DependencyObject)
ReadPreamble()

Freezable 유효한 스레드에서 액세스하고 있는지 확인합니다. 상속자는 Freezable 종속성 속성이 아닌 데이터 멤버를 읽는 API의 시작 부분에서 이 메서드를 호출해야 합니다.

SetCurrentValue(DependencyProperty, Object)

해당 값 원본을 변경하지 않고 종속성 속성의 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
SetValue(DependencyProperty, Object)

종속성 속성 식별자에 의해 지정된 종속성 속성의 로컬 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
SetValue(DependencyPropertyKey, Object)

종속성 속성의 식별자에 의해 DependencyPropertyKey 지정된 읽기 전용 종속성 속성의 로컬 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

serialization 프로세스가 제공된 종속성 속성의 값을 serialize해야 하는지 여부를 나타내는 값을 반환합니다.

(다음에서 상속됨 DependencyObject)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
VerifyAccess()

호출 스레드가 이에 DispatcherObject액세스할 수 있도록 합니다.

(다음에서 상속됨 DispatcherObject)
WritePostscript()

Changed 대한 Freezable 이벤트를 발생시키고 해당 OnChanged() 메서드를 호출합니다. 파생 Freezable 되는 클래스는 종속성 속성으로 저장되지 않은 클래스 멤버를 수정하는 API의 끝에 이 메서드를 호출해야 합니다.

WritePreamble()

Freezable 고정되지 않고 유효한 스레딩 컨텍스트에서 액세스되고 있는지 확인합니다. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버에 쓰는 API의 시작 부분에서 이 메서드를 호출해야 합니다.

이벤트

Name Description
Changed

포함된 개체 또는 개체를 수정할 때 Freezable 발생합니다.

적용 대상

스레드 보안

이 형식의 모든 공용 static 멤버는 스레드로부터 안전합니다. 모든 인스턴스 멤버는 스레드로부터 안전하게 보호되지 않습니다.

속성이 IsFrozen 있으면 false개체가 Freezable 만들어진 스레드에서만 개체에 액세스할 수 있습니다. 다른 스레드에서 액세스하려고 하면 .InvalidOperationExceptionBeginInvoke 메서드는 Invoke 올바른 스레드로 마샬링을 지원합니다.

해당 IsFrozen 속성이 있으면 trueFreezable 개체는 자유 스레드입니다. 자세한 내용은 Freezable 개체 개요를 참조하세요.