일반 PropertyMetadata보다 FrameworkPropertyMetadata 또는 UIPropertyMetadata를 언제 사용해야합니까?


81

샘플 첨부 속성 및 동작을 볼 때 FrameworkPropertyMetadata, UIPropertyMetadataPropertyMetadata. 모두 상속 계층 구조를 형성하기 때문에 사용할 항목을 어떻게 선택합니까?

답변:


80

이러한 클래스는 종속성 속성의 일부 동작 측면을보고합니다.

제공하는 옵션에 대한 다른 클래스를 확인하십시오.

예를 들면

dp로 속성을 백업하고 기본값을 제공하려면 PropertyMetadata,

애니메이션 동작을 지정하려면 UIPropertyMetadata,

그러나 일부 속성이 wpf 프레임 워크 수준 항목 (예 : 요소 레이아웃, 부모 레이아웃 또는 데이터 바인딩)에 영향을 미치는 경우 FrameworkPropertyMetadata.

msdn http://msdn.microsoft.com/en-us/library/ms751554.aspx에서 확인할 수있는 세부 정보


2
진짜 질문은 특히 Silverlight에 PropertyMetadata 하위 클래스가 없기 때문에 propdp 스 니펫이 UIPropertyMetadata를 사용하는 이유는 무엇입니까? 그것은 나를 미치게 만든다.
Grank

6
WPF와 Silverlight간에 동일한 코드 조각이 공유되기 때문입니다. 이 링크 ( blog.nerdplusart.com/archives/silverlight-code-snippets
gp)

2
MSDN은 "일반적으로 FrameworkPropertyMetadata를 사용해야합니다. 특히 속성이 레이아웃 및 데이터 바인딩과 같은 속성 시스템 및 WPF 기능과 상호 작용하는 경우 특히 그렇습니다." -(메타 데이터 지정) msdn.microsoft.com/en-us/library/ms751554.aspx
Wayne Bloss

FrameworkPropertyMetadata는 어떤 종류의 데이터 바인딩에 사용해야합니까? 컨트롤의 IsEnabled에 바인딩 된 속성을 원합니다.
Monstieur
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.