다음을 통해 공유


DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs) 메서드

정의

DependencyObject에서 종속성 속성의 유효 값이 업데이트될 때마다 호출됩니다. 변경된 특정 종속성 속성이 이벤트 데이터에서 보고됩니다.

protected:
 virtual void OnPropertyChanged(System::Windows::DependencyPropertyChangedEventArgs e);
protected virtual void OnPropertyChanged (System.Windows.DependencyPropertyChangedEventArgs e);
abstract member OnPropertyChanged : System.Windows.DependencyPropertyChangedEventArgs -> unit
override this.OnPropertyChanged : System.Windows.DependencyPropertyChangedEventArgs -> unit
Protected Overridable Sub OnPropertyChanged (e As DependencyPropertyChangedEventArgs)

매개 변수

e
DependencyPropertyChangedEventArgs

관심 있는 종속성 속성 식별자, 형식에 대한 속성 메타데이터, 기존 값 및 새 값을 포함하는 이벤트 데이터입니다.

설명

이 메서드는 일반적으로 개별 속성 변경 내용을 검색하거나 대/소문자별로 속성의 무효화를 수행하기 위한 것이 아닙니다. OnPropertyChanged 는 속성의 광범위한 분류에 대한 특정 정보가 알려진 경우 일반 무효화 패턴을 수정하기 위한 것입니다. 예를 들어 의 변경 내용은 FreezableFreezable값 형식 변경일 수도 있고 다른 Freezable 참조 내에 있는 하위 속성일 수도 있습니다. 의 재정의 OnPropertyChanged 구현은 Freezable 내부 정보를 사용하여 속성이 하위 속성인지 여부를 확인하고 두 경우 모두에 적절한 기본 클래스 논리를 제공합니다.

OnPropertyChanged 는 개체의 수명 동안 여러 번 호출될 수 있습니다. 따라서 특정 속성의 메타데이터를 재정의한 다음 개별 속성에 대해 또는 PropertyChangedCallback 함수를 연결 CoerceValueCallback 하면 전체 속성 시스템에 대해 더 나은 성능을 얻을 수 있습니다. 그러나 가 상당한 수의 값 상호 관련된 종속성 속성을 포함하거나 속성 무효화의 여러 관련 사례에 대해 다시 실행해야 하는 렌더링 동작과 같은 논리를 포함하는 경우 이 메서드 DependencyObject 를 사용합니다.

상속자 참고

항상 기본 구현을 호출합니다. 이렇게 하지 않으면 전체 WPF 속성 시스템이 크게 비활성화되어 잘못된 값이 보고됩니다.

적용 대상

추가 정보