2009-09-29 4 views
3

일부 사용자 지정 스타일을 사용하는 컨트롤 템플릿을 정의한 사용자 지정 컨트롤 라이브러리가 있습니다. 내 제어 템플릿은 Generic.xaml 파일에 있으며 사용하는 스타일도 여기에 있으며 StaticResource 태그 확장을 사용하여 컨트롤 템플릿에서 액세스 할 수 있습니다.
일부 경우이 컨트롤 라이브러리를 사용할 때 템플릿 사용 스타일 중 일부를 변경하려고하지만 템플릿을 사용하는 방법을 모르겠습니다.
내 Window의 리소스 사전에 템플릿으로 사용되는 이름이있는 스타일을 추가하면 내 스타일이 Generic.xaml 파일에 정의 된 스타일을 "재정의"하지만 작동하지 않는다고 생각했습니다. .
어떻게해야합니까?generic.xaml에 정의 된 스타일 재정의

답변

0

그런가요?

<Style TargetType="{x:Type YourCustomControl}" 
     BasedOn="{StaticResource {x:Type YourCustomControl}}"> 
    <Setter Property="SomeStylePropertyOfYourCustomControl" 
      Value="{StaticResource SomeStyleYouWantToUseInstead}"/> 
</Style> 
+0

내 템플리트의 스타일이 템플리트의 요소 인스턴스에 적용되므로 내 스타일의 키는 유형이 아닌 문자열입니다. – Andy

+0

BasedOn = "{StaticResource {x : YourCustomControl을 입력하십시오}}"를 사용하면 "컨트롤의 기본값 인 모든 스타일을 기반으로합니다. 스타일의 몇 가지 예를 게시 할 수 있습니까? – Botz3000

관련 문제