Skip to content

Commit

Permalink
(GH-3587) Add style MahApps.Styles.TabControl.Animated
Browse files Browse the repository at this point in the history
  • Loading branch information
punker76 committed May 16, 2020
1 parent ea63612 commit ced50d5
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 24 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -144,14 +144,11 @@
</TabControl>

<Label Margin="0 5 0 0"
Content="Default TabControl with _AnimatedTabControl style"
Content="Default TabControl with MahApps.Styles.TabControl.Animated"
Style="{DynamicResource DescriptionHeaderStyle}" />
<ContentControl DataContext="{Binding ElementName=AnimatedTabControl}" Template="{StaticResource TabControlConfigDataTemplate}" />
<Grid>
<Grid.Resources>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.AnimatedTabControl.xaml" />
</Grid.Resources>
<TabControl x:Name="AnimatedTabControl" Height="150">
<TabControl x:Name="AnimatedTabControl" Height="150" Style="{DynamicResource MahApps.Styles.TabControl.Animated}">
<TabItem Header="this tabcontrol">
<TextBlock FontSize="30" Text="Cool transition" />
</TabItem>
Expand All @@ -165,7 +162,7 @@
</Grid>

<Label Margin="0 5 0 0"
Content="Default TabControl with Animated_SingleRowTabControl style"
Content="Default TabControl with MahApps.Styles.TabControl.AnimatedSingleRow"
Style="{DynamicResource DescriptionHeaderStyle}" />
<ContentControl DataContext="{Binding ElementName=AnimatedSingleRowTabControl}" Template="{StaticResource TabControlConfigDataTemplate}" />
<Grid>
Expand Down
20 changes: 10 additions & 10 deletions src/MahApps.Metro/Styles/Controls.AnimatedTabControl.xaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Behaviors="clr-namespace:MahApps.Metro.Behaviors"
xmlns:Controls="clr-namespace:MahApps.Metro.Controls">
xmlns:behaviors="clr-namespace:MahApps.Metro.Behaviors"
xmlns:mah="clr-namespace:MahApps.Metro.Controls">

<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.TabControl.xaml" />
</ResourceDictionary.MergedDictionaries>

<Style BasedOn="{StaticResource MahApps.Styles.TabControl}" TargetType="{x:Type TabControl}">
<Setter Property="Controls:TabControlHelper.Transition" Value="Left" />
<Style x:Key="MahApps.Styles.TabControl.Animated" BasedOn="{StaticResource MahApps.Styles.TabControl}" TargetType="{x:Type TabControl}">
<Setter Property="mah:TabControlHelper.Transition" Value="Left" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TabControl}">
Expand All @@ -25,9 +25,9 @@
Grid.Row="0"
Grid.Column="0"
Panel.ZIndex="1">
<Controls:Underline x:Name="Underline"
<mah:Underline x:Name="Underline"
Background="Transparent"
BorderBrush="{TemplateBinding Controls:TabControlHelper.UnderlineBrush}"
BorderBrush="{TemplateBinding mah:TabControlHelper.UnderlineBrush}"
LineThickness="1"
Placement="Bottom"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
Expand All @@ -47,20 +47,20 @@
KeyboardNavigation.TabIndex="2"
KeyboardNavigation.TabNavigation="Local"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
<Controls:TransitioningContentControl Behaviors:ReloadBehavior.OnSelectedTabChanged="True"
<mah:TransitioningContentControl behaviors:ReloadBehavior.OnSelectedTabChanged="True"
RestartTransitionOnContentChange="True"
Transition="{TemplateBinding Controls:TabControlHelper.Transition}"
Transition="{TemplateBinding mah:TabControlHelper.Transition}"
UseLayoutRounding="True">
<ContentPresenter x:Name="PART_SelectedContentHost"
Margin="{TemplateBinding Padding}"
ContentSource="SelectedContent"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
UseLayoutRounding="False" />
</Controls:TransitioningContentControl>
</mah:TransitioningContentControl>
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="Controls:TabControlHelper.Underlined" Value="TabPanel">
<Trigger Property="mah:TabControlHelper.Underlined" Value="TabPanel">
<Setter TargetName="Underline" Property="Visibility" Value="Visible" />
</Trigger>
<Trigger Property="TabStripPlacement" Value="Bottom">
Expand Down
1 change: 1 addition & 0 deletions src/MahApps.Metro/Styles/Controls.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/FlatSlider.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.TabControl.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.AnimatedSingleRowTabControl.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.AnimatedTabControl.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.TextBlock.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.TextBox.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.Label.xaml" />
Expand Down
12 changes: 4 additions & 8 deletions src/Mahapps.Metro.Tests/Views/AnimatedTabControlWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,10 @@
<controls:MetroAnimatedTabControl x:Name="MetroTabControl2"
ContentTemplateSelector="{StaticResource TabControlContentTemplateSelector}"
ItemsSource="{Binding Data.TestViewModels}" />
<Grid>
<Grid.Resources>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.AnimatedTabControl.xaml" />
</Grid.Resources>
<TabControl x:Name="NormalTabControl2"
ContentTemplateSelector="{StaticResource TabControlContentTemplateSelector}"
ItemsSource="{Binding Data.TestViewModels}" />
</Grid>
<TabControl x:Name="NormalTabControl2"
Style="{DynamicResource MahApps.Styles.TabControl.Animated}"
ContentTemplateSelector="{StaticResource TabControlContentTemplateSelector}"
ItemsSource="{Binding Data.TestViewModels}" />
</UniformGrid>

</controls:MetroWindow>

0 comments on commit ced50d5

Please sign in to comment.