8,737
社区成员
发帖
与我相关
我的任务
分享
<Window x:Class="WPFHello.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<Style TargetType="{x:Type TabControl}">
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TabControl}">
<Grid KeyboardNavigation.TabNavigation="Local">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<UniformGrid
Name="HeaderPanel"
Grid.Row="1"
Rows="1"
Panel.ZIndex="1"
IsItemsHost="True"
KeyboardNavigation.TabIndex="1"
Background="Transparent"
>
<UniformGrid.Style>
<Style>
<Setter Property="UniformGrid.Opacity" Value="0.1" />
<Style.Triggers>
<Trigger Property="UniformGrid.IsMouseOver" Value="true">
<Setter Property="UniformGrid.Opacity" Value="1" />
</Trigger>
</Style.Triggers>
</Style>
</UniformGrid.Style>
</UniformGrid>
<Border
Name="Border"
Grid.Row="0"
CornerRadius="2"
KeyboardNavigation.TabNavigation="Local"
KeyboardNavigation.DirectionalNavigation="Contained"
KeyboardNavigation.TabIndex="2" >
<ContentPresenter
Name="PART_SelectedContentHost"
Margin="4"
ContentSource="SelectedContent" />
</Border>
</Grid>
<ControlTemplate.Triggers>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<TabControl>
<TabItem Header="summer">
<StackPanel>
<Button FontSize="100">
summer
</Button>
</StackPanel>
</TabItem>
<TabItem Header="winter">
winter
</TabItem>
</TabControl>
</Window>
<Style x:Key="tabItem"
TargetType="{x:Type TabItem}"
BasedOn="{StaticResource custTabItem}">
<Setter Property="BorderThickness"
Value="0" />
<Setter Property="Background"
Value="Transparent" />
<Setter Property="Foreground"
Value="White" />
<Setter Property="Cursor"
Value="Arrow" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TabItem}">
<Grid SnapsToDevicePixels="true" >
<Border x:Name="Bd"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
Padding="{TemplateBinding Padding}">
<ContentPresenter x:Name="Content"
ContentSource="Header"
HorizontalAlignment="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"
RecognizesAccessKey="True"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
VerticalAlignment="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}" />
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver"
Value="true"></Trigger>
<Trigger Property="IsSelected"
Value="true">
<Setter Property="Panel.ZIndex"
Value="1" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver"
Value="true" />
<Condition Property="IsSelected"
Value="false" />
</MultiTrigger.Conditions>
<Setter Property="Cursor" TargetName="Bd"
Value="Hand" />
</MultiTrigger>
<Trigger Property="TabStripPlacement"
Value="Top">
<Setter Property="BorderThickness"
TargetName="Bd"
Value="1,1,1,0" />
</Trigger>
<Trigger Property="TabStripPlacement"
Value="Bottom">
<Setter Property="BorderThickness"
TargetName="Bd"
Value="1,0,1,1" />
</Trigger>
<Trigger Property="TabStripPlacement"
Value="Left">
<Setter Property="BorderThickness"
TargetName="Bd"
Value="1,1,0,1" />
</Trigger>
<Trigger Property="TabStripPlacement"
Value="Right">
<Setter Property="BorderThickness"
TargetName="Bd"
Value="0,1,1,1" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected"
Value="true" />
<Condition Property="TabStripPlacement"
Value="Top" />
</MultiTrigger.Conditions>
<Setter Property="Margin"
Value="0,0,0,-1" />
<Setter Property="Margin"
TargetName="Content"
Value="0" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected"
Value="true" />
<Condition Property="TabStripPlacement"
Value="Bottom" />
</MultiTrigger.Conditions>
<Setter Property="Margin"
Value="0,-1,0,0" />
<Setter Property="Margin"
TargetName="Content"
Value="0" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected"
Value="true" />
<Condition Property="TabStripPlacement"
Value="Left" />
</MultiTrigger.Conditions>
<Setter Property="Margin"
Value="0,0,-1,0" />
<Setter Property="Margin"
TargetName="Content"
Value="0" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected"
Value="true" />
<Condition Property="TabStripPlacement"
Value="Right" />
</MultiTrigger.Conditions>
<Setter Property="Margin"
Value="-1,0,0,0" />
<Setter Property="Margin"
TargetName="Content"
Value="0" />
</MultiTrigger>
<Trigger Property="IsEnabled"
Value="false"></Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected"
Value="True">
<Setter Property="Background"
Value="{StaticResource Background2}" />
<Setter Property="BorderBrush"
Value="{StaticResource BorderBrush2}" />
</Trigger>
</Style.Triggers>
</Style>
<Trigger Property="UniformGrid.IsMouseOver" Source="HeaderPanel" Value="true">