2014-07-10 3 views
0

WPF 도구 모음 안에 넣을 사용자 지정 컨트롤이 있습니다. 문제는 없지만 각 항목의 툴바 안에 특별한 스타일을 설정하고 싶지는 않습니다. 기본 .NET 컨트롤 (Button, Checkbox 등)에는도구 모음 내의 사용자 지정 컨트롤에 대한 defaultstyle 정의

{x:Static ToolBar.ButtonStyleKey} 

이 있습니다. 하지만 네이티브 컨트롤에만 해당되는 것 같습니다. 툴바에서 내 맞춤 컨트롤의 기본 스타일을 설정할 수 있습니까? 또는 툴바의 확장 기능과 비슷한 패턴을 구현할 수 있습니까? 누구나 방법을 알고 있니?

으로 내 문제에 대한 간단한 예 요청 : 지금은 내 CustomControl 특별한 StyleKey을 통해 내가 스타일을 각각 설정할 필요가 없습니다 않는 버튼과 같은 기본 방법으로 스타일 받아보기 원하는

<ToolBar HorizontalAlignment="Left"> 
    <common:MyCustomControl Style="{StaticResource DefaultStyleInsideToolBar}" /> 
    <Button Content="I get styled through ToolBar.ButtonStyleKey" /> 
</ToolBar> 

나는 ToolBar 내부에서만 (그리고 ToolBar 내부에서만) 설정할 수 있습니다. 이미 단순히 MyCustomControl의 모든 인스턴스를 대상으로 도구 모음의 자원에 스타일을 추가 할 다른 곳에서 정의하면 키 "DefaultStyleInsideToolBar"로 스타일을 가지고 가정 ToolBar See Line 474

+0

질문이 명확하지 않습니다. 왜 당신이 제어 할 수있는'Style'을 제공 할 수 없습니까? 문제를 설명하기 위해 관련 코드를 표시 할 수 있습니까? – Sheridan

+0

커스텀 컨트롤 자체에 스타일을 추가하지 않는 이유는 무엇입니까? –

+0

내가 말했던 것처럼 ... 저는 툴바에 추가 할 때마다 컨트롤에 스타일을 추가하고 싶지 않습니다. 나는 도구 모음 안에있는 경우 다른 "defaultstyle"컨트롤을 원한다. – KroaX

답변

1

을 구현하는 방법을 검색하고 세부 사항에

이전에 정의한 스타일을 기반으로합니다 :

<ToolBar HorizontalAlignment="Left"> 
    <ToolBar.Resources> 
     <Style TargetType="{x:Type common:MyCustomControl}" BasedOn="{StaticResource DefaultStyleInsideToolBar}"/> 
    </ToolBar.Resources> 
    <common:MyCustomControl /> 
    <Button Content="I get styled through ToolBar.ButtonStyleKey" /> 
</ToolBar> 
+0

이 하나는 해결책으로 감사한다. – KroaX

관련 문제