2010-03-09 4 views
6

WPF의 도구 모음에 단추가 있습니다.스타일을 사용하여 도구 모음 단추 크기 설정

내가 XAML 할 경우 : 도구 모음의 버튼

<ToolBar.Resources> 
    <Style TargetType="{x:Type Button}"> 
     <Setter Property="Width" Value="21"></Setter> 
     <Setter Property="Height" Value="21"></Setter> 
    </Style> 
</ToolBar.Resources> 

아무도 따라 자신의 크기를 설정하지합니다.

각 버튼을 눌러 수동으로 너비와 높이를 원하는 값으로 설정해야합니다.

툴바의 스타일이 작동하지 않는 이유는 무엇입니까?

답변

8

이 현상은 ToolBar가 기본 스타일을 유지하는 대신 ToolBar.ButtonStyleKey로 식별되는 스타일을 단추에 적용하기 때문에 발생합니다. (도구 모음에 버튼 기본 스타일이 상승하더라도 평평 이유입니다.) 당신은이 스타일을 "납치"할 필요가 대신 기본 스타일의 :

<ToolBar.Resources> 
    <Style x:Key="{x:Static ToolBar.ButtonStyleKey}" TargetType="Button"> 
    <Setter Property="Width" Value="100" /> 
    </Style> 
</ToolBar.Resources> 

참고 X : 스타일 선언의 주요.

2

하드 코드 된 단추를 도구 모음에 추가하는 경우 ToolBar.ItemContainerStyle을 사용자 지정 스타일로 설정하여 원하는 효과를 얻을 수 있습니다. 당신이 ToolBar.ItemsSource를 사용하는 경우

<ToolBar.ItemContainerStyle> 
    <Style 
     TargetType="Button"> 
     <Setter 
      Property="Width" 
      Value="21" /> 
     <Setter 
      Property="Height" 
      Value="21" /> 
    </Style> 
</ToolBar.ItemContainerStyle> 

대신 도구 모음의 데이터에 대한 템플릿을 정의 할 ToolBar.ItemTemplate를 사용할 수 있습니다.

<ToolBar.ItemTemplate> 
    <DataTemplate> 
     <Button 
      Width="21" 
      Height="21" 
      Content="{Binding}" /> 
    </DataTemplate> 
</ToolBar.ItemTemplate> 

경우에 따라 유연성을 높이기 위해이 두 가지 기능을 동시에 사용할 수 있습니다.

이것은 툴바뿐만 아니라 ItemsControl의 모든 파생물에도 적용됩니다.

행운의 행운,

관련 문제