FrameworkPropertyMetadata.AffectsRender 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
종속성 속성이 정렬 또는 측정값에 특별히 영향을 주지 않지만 다시 그리기가 필요한 방식으로 일반 레이아웃에 영향을 줄 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다.
public:
property bool AffectsRender { bool get(); void set(bool value); };
public bool AffectsRender { get; set; }
member this.AffectsRender : bool with get, set
Public Property AffectsRender As Boolean
속성 값
true이 메타데이터가 있는 종속성 속성이 렌더링에 영향을 주면 그렇지 않으면 . false 기본값은 false입니다.
예외
메타데이터가 봉인되고 메타데이터의 속성을 설정할 수 없도록 종속성 속성 작업에 메타데이터가 이미 적용되었습니다.
예제
다음 예제에서는 다양한 종속성 속성 필드에서 기본 메타데이터를 가져오고, 다양한 속성의 FrameworkPropertyMetadata 값을 쿼리하고, 정보를 사용하여 테이블을 채워 "메타데이터 브라우저"를 구현합니다.
pm = dp.GetMetadata(dp.OwnerType);
pm = dp.GetMetadata(dp.OwnerType)
FrameworkPropertyMetadata fpm = pm as FrameworkPropertyMetadata;
if (fpm!=null) {
AffectsArrange.Text = (fpm.AffectsArrange) ? "Yes" : "No";
AffectsMeasure.Text = (fpm.AffectsMeasure) ? "Yes" : "No";
AffectsRender.Text = (fpm.AffectsRender) ? "Yes" : "No";
Inherits.Text = (fpm.Inherits) ? "Yes" : "No";
IsDataBindingAllowed.Text = (fpm.IsDataBindingAllowed) ? "Yes" : "No";
BindsTwoWayByDefault.Text = (fpm.BindsTwoWayByDefault) ? "Yes" : "No";
}
Dim fpm As FrameworkPropertyMetadata = TryCast(pm, FrameworkPropertyMetadata)
If fpm IsNot Nothing Then
AffectsArrange.Text = If((fpm.AffectsArrange), "Yes", "No")
AffectsMeasure.Text = If((fpm.AffectsMeasure), "Yes", "No")
AffectsRender.Text = If((fpm.AffectsRender), "Yes", "No")
[Inherits].Text = If((fpm.Inherits), "Yes", "No")
IsDataBindingAllowed.Text = If((fpm.IsDataBindingAllowed), "Yes", "No")
BindsTwoWayByDefault.Text = If((fpm.BindsTwoWayByDefault), "Yes", "No")
설명
FrameworkElement 및 FrameworkContentElement 요소에 존재하는 모든 종속성 속성에 OnPropertyChanged 대한 유효 값 변경을 모니터링하는 구현을 포함합니다. 해당 논리의 일부로 유효 값을 변경하고 메타데이터 AffectsRender 가 설정된 true 종속성 속성은 해당 요소에 대한 시각적 개체를 무효화하는 지연된 요청을 시작합니다. 이 WPF 프레임워크 수준 구현은 이미 구현되어 있으므로 WPF 프레임워크 수준 레이아웃 동작을 실질적으로 대체하거나 수정하지 않는 한 종속성 속성을 AffectsRender 찾을 필요가 없습니다.
사용자 지정 OnPropertyChanged 구현은 종속성 속성 변경에 대해 비슷한 동작을 선택할 수 있습니다AffectsRendertrue.
파생 클래스의 PropertyMetadata 속성은 일반적으로 개체 모델에서 읽기/쓰기로 정의됩니다. 이렇게 하면 인스턴스를 초기화한 후 조정할 수 있습니다. 그러나 메타데이터를 호출 RegisterAddOwnerOverrideMetadata또는 호출의 일부로 사용한 후 속성 시스템은 메타데이터 인스턴스를 봉인하고 메타데이터의 세부 사항을 전달하는 속성은 이제 변경할 수 없는 것으로 간주됩니다. 이 메타데이터 인스턴스에 있는 후 IsSealedtrue 이 속성을 설정하려고 하면 예외가 발생합니다.
XAML 텍스트 사용
이 클래스의 멤버는 일반적으로 XAML에서 사용되지 않습니다.