2012-04-04 4 views
1

프로젝트에서 AvalonDock을 사용하고 있습니다. 다음과 같이 예를 위해, 그것은 구성되어있다 :고 대비 테마를위한 Restyling AvalonDock?

<ad:DockingManager> 
    <ad:DockablePane> 
     <ad:DockableContent Title="Test1"> 
     </ad:DockableContent> 
     <ad:DockableContent Title="Test2"> 
     </ad:DockableContent> 
    </ad:DockablePane> 
</ad:DockingManager> 

Normal tabs

이 괜찮지 만, 아래 그림과 같이 불행하게도 탭이 고 대비 테마에 너무 잘 보이지 않습니다.

High contrast tabs

이상적으로는 배경 (예를 들어, 창 색상)에 대한 시스템 색을 사용하여 탭의 스타일을 다시하고 싶습니다. 이것이 가능한가?

덕분에, 앨런

+0

다운로드를 볼 수 있습니다. 거기에서 스타일 xaml 파일을 찾을 수 있습니다. 하나를 가지고 그것을 조롱하십시오. –

답변

3

는 코드 플렉스에 가서 비트 아발론 다운로드합니다. 거기에서 스타일에 대한 XAML 파일을 빠르게 찾을 수 있어야합니다. 하나를 기준으로 삼아 그것을 조롱하십시오.

는이 같은 (나는 단지 하나 개의 스타일을 포함합니다) 코드 플렉스에서이 비트

<!--DockingManager--> 
<Style x:Key="{x:Type ad:DockingManager}" TargetType="{x:Type ad:DockingManager}"> 
    <Setter Property="Background" Value="{StaticResource DockManagerBackground}"/> 
    <Setter Property="FocusVisualStyle" Value="{x:Null}"/> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="{x:Type ad:DockingManager}"> 
       <Grid Background="{TemplateBinding Background}"> 
        <Grid.ColumnDefinitions> 
         <ColumnDefinition Width="Auto"/> 
         <ColumnDefinition/> 
         <ColumnDefinition Width="Auto"/> 
        </Grid.ColumnDefinitions> 
        <Grid.RowDefinitions> 
         <RowDefinition Height="Auto"/> 
         <RowDefinition/> 
         <RowDefinition Height="Auto"/> 
        </Grid.RowDefinitions> 
        <StackPanel Name="PART_LeftAnchorTabPanel" 
          Grid.Column="0" Grid.Row="1" Orientation="Vertical"> 
         <StackPanel.Resources> 
          <Style TargetType="{x:Type ad:DockablePaneAnchorTabGroup}"> 
           <Setter Property="LayoutTransform"> 
            <Setter.Value > 
             <RotateTransform Angle="90"/> 
            </Setter.Value> 
           </Setter> 
           <Setter Property="Margin" Value="0,2,2,0"/> 
          </Style> 
          <Style TargetType="Border"> 
           <Setter Property="CornerRadius" Value="0,0,3,3"/> 
          </Style> 
         </StackPanel.Resources> 
        </StackPanel> 
        <StackPanel Name="PART_RightAnchorTabPanel" Grid.Column="2" Grid.Row="1" Orientation="Vertical"> 
         <StackPanel.Resources> 
          <Style TargetType="{x:Type ad:DockablePaneAnchorTabGroup}"> 
           <Setter Property="LayoutTransform"> 
            <Setter.Value > 
             <RotateTransform Angle="90"/> 
            </Setter.Value> 
           </Setter> 
           <Setter Property="Margin" Value="2,2,0,0"/> 
          </Style> 
          <Style TargetType="Border"> 
           <Setter Property="CornerRadius" Value="3,3,0,0"/> 
          </Style> 
         </StackPanel.Resources> 
        </StackPanel> 
        <StackPanel Name="PART_TopAnchorTabPanel" Grid.Column="1" Grid.Row="0" Orientation="Horizontal"/> 
        <StackPanel Name="PART_BottomAnchorTabPanel" Grid.Column="1" Grid.Row="2" Orientation="Horizontal"/> 
        <Border 
         x:Name="PART_InternalContainer" 
         Background="{StaticResource DockManagerBorderBackground}" 
         Grid.Column="1" Grid.Row="1" 
         Padding="2"> 
         <ContentPresenter /> 
        </Border> 
       </Grid> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

note that right on top of the file there will be a bunch of brushes, start with them, then start digging dipper 
+0

감사합니다. Denis. 나는이 방법을 사용하여 탭을 재 스타일로 만들었습니다. –

+0

도움이되어 기쁩니다. 알란, 진정해! –