FrameworkPropertyMetadata.Inherits 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
종속성 속성의 값을 상속할 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다.
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에서 사용되지 않습니다.