FrameworkPropertyMetadata.Inherits 속성

정의

종속성 속성의 값을 상속할 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다.

public:
 property bool Inherits { bool get(); void set(bool value); };
public bool Inherits { get; set; }
member this.Inherits : bool with get, set
Public Property Inherits 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")

설명

속성 값 상속은 WPF 프레임워크 수준에서 WPF 속성 시스템의 기능입니다. 따라서 특정 종속성 속성은 XAML 요소 트리의 루트 또는 그 근처의 요소에 로컬로 설정한 다음 해당 속성을 소유한 자식 요소의 논리 트리 내의 모든 요소에서 해당 값을 상속받을 수 있습니다. 속성 값 상속은 기본적으로 사용하도록 설정되지 않으며 사용하도록 설정하면 성능에 몇 가지 영향을 줍니다. 자세한 내용은 속성 값 상속을 참조하세요.

메모

속성 값 상속이 연결되지 않은 종속성 속성에 대해 작동하는 것처럼 보일 수 있지만 런타임 트리의 특정 개체 개체 나누기를 통해 연결되지 않은 속성에 대한 상속 동작은 정의되지 않습니다. 항상 RegisterAttached를 사용하여 메타데이터에서 Inherits를 지정할 때 속성을 등록하십시오.

파생 클래스의 PropertyMetadata 속성은 일반적으로 개체 모델에서 읽기/쓰기로 정의됩니다. 이렇게 하면 인스턴스를 초기화한 후 조정할 수 있습니다. 그러나 메타데이터를 호출 RegisterAddOwnerOverrideMetadata또는 호출의 일부로 사용한 후 속성 시스템은 메타데이터 인스턴스를 봉인하고 메타데이터의 세부 사항을 전달하는 속성은 이제 변경할 수 없는 것으로 간주됩니다. 이 메타데이터 인스턴스에 있는 후 IsSealedtrue 이 속성을 설정하려고 하면 예외가 발생합니다.

XAML 텍스트 사용

이 클래스의 멤버는 일반적으로 XAML에서 사용되지 않습니다.

적용 대상

추가 정보