FrameworkPropertyMetadata.AffectsRender FrameworkPropertyMetadata.AffectsRender FrameworkPropertyMetadata.AffectsRender FrameworkPropertyMetadata.AffectsRender Property

정의

종속성 속성은 정렬이나 측정에 특별히 영향을 주지 않는 어떤 방식으로 일반 레이아웃에 잠재적으로 영향을 주는지 여부를 나타내지만 다시 그리기를 필요로 하는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether a dependency property potentially affects the general layout in some way that does not specifically influence arrangement or measurement, but would require a redraw.

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입니다.true if the dependency property on which this metadata exists affects rendering; otherwise, false. 기본값은 false입니다.The default is false.

예외

메타데이터는 종속성 속성 작업에 이미 적용되었으므로 메타데이터가 봉인되어 메타데이터의 속성을 설정할 수 없습니다.The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

예제

다음 예제에서는 속성 필드 다양 한 종속성에서 기본 메타 데이터를 가져오고, 다양 한 값을 쿼리 FrameworkPropertyMetadata 속성에서 "메타 데이터 브라우저"를 구현 하는 테이블을 채우기 위한 정보를 사용 합니다.The following example obtains the default metadata from various dependency property fields, queries the value of various FrameworkPropertyMetadata properties on it, and uses the information to populate a table to implement a "metadata browser".

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")

설명

FrameworkElementFrameworkContentElement 의 구현이 포함 OnPropertyChanged 요소에 있는 모든 종속성 속성 유효 값 변경 내용을 모니터링 하는 합니다.FrameworkElement and FrameworkContentElement include an implementation of OnPropertyChanged that monitors effective value changes to all dependency properties that exist on an element. 논리의 일부로, 적용을 변경 하는 종속성 속성 값 및 사용 하 여 메타 데이터를 가져야 AffectsRendertrue 해당 요소에 대 한 시각적 개체를 무효화 하는 지연 된 요청이 시작 됩니다.As part of that logic, dependency properties that change effective value and have metadata with AffectsRender set to true will initiate a deferred request to invalidate the visuals for that element. 이 WPF 프레임 워크 수준 구현 되어에서 이미 이기 때문에 일반적으로 필요가 없습니다 사용 하 여 종속성 속성에 대 한 검색할 AffectsRender 대체로 대체 또는 WPF 프레임 워크 수준 레이아웃 동작을 수정 하는 경우가 아니면 합니다.Because this WPF framework-level implementation is already in place, you typically do not need to look for dependency properties with AffectsRender unless you are substantially replacing or modifying the WPF framework-level layout behavior.

사용자 지정 OnPropertyChanged 구현이 종속성 속성 변경에 대 한 비슷한 동작을 선택할 수 있는 AffectsRendertrue합니다.Custom OnPropertyChanged implementations might choose to have similar behavior for dependency property changes where AffectsRender is true.

에 대 한 속성의 파생 클래스인 PropertyMetadata 읽기 / 쓰기 가능으로 개체 모델에서 일반적으로 정의 됩니다.Properties on any derived classes of PropertyMetadata are typically defined in the object model as read-write. 이므로 인스턴스를 초기화 한 후 조정할 수 있습니다.This is so they can be adjusted after initialization of the instance. 그러나 메타 데이터에 대 한 호출의 일부로 사용 되 면 Register, AddOwner, 또는 OverrideMetadata, 속성 시스템에는 해당 메타 데이터 인스턴스가 봉인 됩니다 및 속성 메타 데이터의 세부 정보를 전달 하는 이제 변경할 수 없는 것으로 간주 됩니다.However, after the metadata is consumed as part of a call to Register, AddOwner, or OverrideMetadata, the property system will seal that metadata instance and properties that convey the specifics of the metadata are now considered immutable. 후이 속성을 설정 하려고 IsSealedtrue 인스턴스가 메타이 데이터에서 예외가 발생 합니다.Attempting to set this property after IsSealed is true on this metadata instance will raise an exception.

XAML 텍스트 사용XAML Text Usage

이 클래스의 멤버에 일반적으로 사용 되지 않는 XAMLXAML합니다.Members of this class are not typically used in XAMLXAML.

적용 대상

추가 정보