Skip to content

Commit 5136fd6

Browse files
Fix for #2603 (#2634)
1 parent ec1af57 commit 5136fd6

File tree

2 files changed

+80
-15
lines changed

2 files changed

+80
-15
lines changed

MainDemo.Wpf/Tabs.xaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,15 @@
278278
<TabItem Header="TAB 2">
279279
<TextBlock Margin="8" Text="Left placement" />
280280
</TabItem>
281+
<TabItem Header="TAB 3 Diff Width">
282+
<TextBlock Margin="8" Text="Tab 3 with different width" />
283+
</TabItem>
284+
<TabItem Header="TAB 4 Looong">
285+
<TextBlock Margin="8" Text="Tab 4 with long width" />
286+
</TabItem>
287+
<TabItem Header="TABB 5">
288+
<TextBlock Margin="8" Text="Left placement tabb 5" />
289+
</TabItem>
281290
</TabControl>
282291
</materialDesign:Card>
283292
</smtx:XamlDisplay>
@@ -358,6 +367,30 @@
358367
<TabItem Header="TAB 2">
359368
<TextBlock Margin="8" Text="Not filled secondary example tab 2" />
360369
</TabItem>
370+
<TabItem Header="TAB 3333">
371+
<TextBlock Margin="8" Text="Full-width secondary example tab 3333" />
372+
</TabItem>
373+
<TabItem Header="TAB4 Wide">
374+
<TextBlock Margin="8" Text="Full-width secondary example tab 4 wide" />
375+
</TabItem>
376+
<TabItem Header="TABbbbbbbbbbbxxxxx 5">
377+
<TextBlock Margin="8" Text="Full-width secondary example tab 5" />
378+
</TabItem>
379+
<TabItem Header="TAB 6 Different Width">
380+
<TextBlock Margin="8" Text="Full-width secondary example tab 6 different width" />
381+
</TabItem>
382+
<TabItem Header="TAB 7 Looooong">
383+
<TextBlock Margin="8" Text="Full-width secondary example tab 7 looooong" />
384+
</TabItem>
385+
<TabItem Header="TAB 8 Width">
386+
<TextBlock Margin="8" Text="Full-width secondary example tab 8 width" />
387+
</TabItem>
388+
<TabItem Header="TAAX999">
389+
<TextBlock Margin="8" Text="Full-width secondary example tab 9" />
390+
</TabItem>
391+
<TabItem Header="Tab10">
392+
<TextBlock Margin="8" Text="Full-width secondary example tab 10" />
393+
</TabItem>
361394
</TabControl>
362395
</materialDesign:Card>
363396
</smtx:XamlDisplay>

MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TabControl.xaml

Lines changed: 47 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -50,15 +50,28 @@
5050
VerticalAlignment="Stretch"
5151
Background="{TemplateBinding wpf:ColorZoneAssist.Background}"
5252
Focusable="False">
53-
54-
<UniformGrid
55-
x:Name="HeaderPanel"
56-
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
57-
VerticalAlignment="Top"
58-
Focusable="False"
59-
IsItemsHost="True"
60-
KeyboardNavigation.TabIndex="1"
61-
Rows="1" />
53+
<ScrollViewer
54+
HorizontalScrollBarVisibility="Hidden"
55+
VerticalScrollBarVisibility="Hidden">
56+
<StackPanel>
57+
<UniformGrid
58+
x:Name="CenteredHeaderPanel"
59+
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
60+
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
61+
Focusable="False"
62+
IsItemsHost="True"
63+
KeyboardNavigation.TabIndex="1"
64+
Rows="1" />
65+
<VirtualizingStackPanel
66+
x:Name="HeaderPanel"
67+
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
68+
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
69+
Focusable="False"
70+
IsItemsHost="True"
71+
KeyboardNavigation.TabIndex="1"
72+
Orientation="Horizontal" />
73+
</StackPanel>
74+
</ScrollViewer>
6275
</wpf:ColorZone>
6376
</wpf:Card>
6477
<Border
@@ -83,21 +96,37 @@
8396
</DockPanel>
8497

8598
<ControlTemplate.Triggers>
99+
<Trigger Property="HorizontalContentAlignment" Value="Stretch">
100+
<Setter TargetName="HeaderPanel" Property="Visibility" Value="Collapsed" />
101+
<Setter TargetName="CenteredHeaderPanel" Property="Visibility" Value="Visible" />
102+
</Trigger>
103+
<Trigger Property="HorizontalContentAlignment" Value="Center">
104+
<Setter TargetName="HeaderPanel" Property="Visibility" Value="Collapsed" />
105+
<Setter TargetName="CenteredHeaderPanel" Property="Visibility" Value="Visible" />
106+
</Trigger>
107+
<Trigger Property="HorizontalContentAlignment" Value="Left">
108+
<Setter TargetName="HeaderPanel" Property="Visibility" Value="Visible" />
109+
<Setter TargetName="CenteredHeaderPanel" Property="Visibility" Value="Collapsed" />
110+
</Trigger>
111+
<Trigger Property="HorizontalContentAlignment" Value="Right">
112+
<Setter TargetName="HeaderPanel" Property="Visibility" Value="Visible" />
113+
<Setter TargetName="CenteredHeaderPanel" Property="Visibility" Value="Collapsed" />
114+
</Trigger>
86115
<Trigger Property="TabStripPlacement" Value="Bottom">
87116
<Setter TargetName="PART_HeaderCard" Property="DockPanel.Dock" Value="Bottom" />
88117
<Setter Property="wpf:ShadowAssist.ShadowEdges" Value="Top" />
89118
</Trigger>
90119
<Trigger Property="TabStripPlacement" Value="Left">
91120
<Setter TargetName="PART_HeaderCard" Property="DockPanel.Dock" Value="Left" />
92-
<Setter TargetName="HeaderPanel" Property="Rows" Value="0" />
121+
<Setter TargetName="CenteredHeaderPanel" Property="Rows" Value="0" />
93122
<Setter Property="wpf:ShadowAssist.ShadowEdges" Value="Right" />
94-
<Setter TargetName="HeaderPanel" Property="Columns" Value="1" />
123+
<Setter TargetName="CenteredHeaderPanel" Property="Columns" Value="1" />
95124
</Trigger>
96125
<Trigger Property="TabStripPlacement" Value="Right">
97126
<Setter TargetName="PART_HeaderCard" Property="DockPanel.Dock" Value="Right" />
98127
<Setter Property="wpf:ShadowAssist.ShadowEdges" Value="Left" />
99-
<Setter TargetName="HeaderPanel" Property="Rows" Value="0" />
100-
<Setter TargetName="HeaderPanel" Property="Columns" Value="1" />
128+
<Setter TargetName="CenteredHeaderPanel" Property="Rows" Value="0" />
129+
<Setter TargetName="CenteredHeaderPanel" Property="Columns" Value="1" />
101130
</Trigger>
102131
</ControlTemplate.Triggers>
103132
</ControlTemplate>
@@ -578,7 +607,10 @@
578607
</Setter>
579608
</Style>
580609

581-
<!-- Obsolete: will be removed in 5.0.0 release -->
582-
<Style x:Key="MaterialDesignNavigatilRailTabControl" TargetType="{x:Type TabControl}" BasedOn="{StaticResource MaterialDesignNavigationRailTabControl}" />
610+
<!-- Obsolete: will be removed in 5.0.0 release -->
611+
<Style
612+
x:Key="MaterialDesignNavigatilRailTabControl"
613+
BasedOn="{StaticResource MaterialDesignNavigationRailTabControl}"
614+
TargetType="{x:Type TabControl}" />
583615

584616
</ResourceDictionary>

0 commit comments

Comments
 (0)