From 73187efac48310a8f01bd44127a816ddffb6d9e5 Mon Sep 17 00:00:00 2001 From: Michel Michels Date: Thu, 30 Dec 2021 05:48:50 +0100 Subject: [PATCH] Tab control extended (#2544) * Uncomment TabControl and TabItem default style and Tweak it a bit and format the document * Enable the new TabControl/TabItem Styles by default for Material 2/3 * Add a new Tabs UserControl to the Main Demo App to show the new styles * Tabs page in demo app rework, wip TopIcon for TabItem * TabItem Foreground bug fix * Demo page edited * Removed unnecessary properties * Placement fix for TabControl header when left or right * Filled style implemented * Update MainDemo.Wpf/Domain/MainWindowViewModel.cs Co-authored-by: Kevin B * Different sizes added to Demo app * Shadows fixed * PART_ColorZone renamed to PART_HeaderCard Co-authored-by: Ahmed Mohamed Abdel-Razek Co-authored-by: Kevin B --- MainDemo.Wpf/Domain/MainWindowViewModel.cs | 9 + MainDemo.Wpf/Tabs.xaml | 382 +++++++++++ MainDemo.Wpf/Tabs.xaml.cs | 28 + .../Themes/MaterialDesign2.Defaults.xaml | 2 + .../Themes/MaterialDesign3.Defaults.xaml | 2 + .../Themes/MaterialDesignTheme.Defaults.xaml | 116 ++-- .../MaterialDesignTheme.TabControl.xaml | 633 ++++++++++-------- 7 files changed, 856 insertions(+), 316 deletions(-) create mode 100644 MainDemo.Wpf/Tabs.xaml create mode 100644 MainDemo.Wpf/Tabs.xaml.cs diff --git a/MainDemo.Wpf/Domain/MainWindowViewModel.cs b/MainDemo.Wpf/Domain/MainWindowViewModel.cs index 9ed41accc1..f23bf43725 100644 --- a/MainDemo.Wpf/Domain/MainWindowViewModel.cs +++ b/MainDemo.Wpf/Domain/MainWindowViewModel.cs @@ -286,6 +286,15 @@ private static IEnumerable GenerateDemoItems(ISnackbarMessageQueue sna DocumentationLink.StyleLink("ListView") }); + yield return new DemoItem( + "Tabs", + typeof(Tabs), + new[] + { + DocumentationLink.DemoPageLink(), + DocumentationLink.StyleLink("TabControl") + }); + yield return new DemoItem( "Trees", typeof(Trees), diff --git a/MainDemo.Wpf/Tabs.xaml b/MainDemo.Wpf/Tabs.xaml new file mode 100644 index 0000000000..938edf0403 --- /dev/null +++ b/MainDemo.Wpf/Tabs.xaml @@ -0,0 +1,382 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MainDemo.Wpf/Tabs.xaml.cs b/MainDemo.Wpf/Tabs.xaml.cs new file mode 100644 index 0000000000..29b12473f6 --- /dev/null +++ b/MainDemo.Wpf/Tabs.xaml.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace MaterialDesignDemo +{ + /// + /// Interaction logic for Tabs.xaml + /// + public partial class Tabs : UserControl + { + public Tabs() + { + InitializeComponent(); + } + } +} diff --git a/MaterialDesignThemes.Wpf/Themes/MaterialDesign2.Defaults.xaml b/MaterialDesignThemes.Wpf/Themes/MaterialDesign2.Defaults.xaml index 27e95147d2..f022f89324 100644 --- a/MaterialDesignThemes.Wpf/Themes/MaterialDesign2.Defaults.xaml +++ b/MaterialDesignThemes.Wpf/Themes/MaterialDesign2.Defaults.xaml @@ -81,6 +81,8 @@ - diff --git a/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TabControl.xaml b/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TabControl.xaml index 11921a1874..d9ca75ebce 100644 --- a/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TabControl.xaml +++ b/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TabControl.xaml @@ -1,169 +1,284 @@ - + - - - - + + + + - - + + + + + + + + + - + + + + + + + + + + + - + - + - - + + - - - - - - - - - - - - - + - + @@ -175,79 +290,61 @@ - - - - - - - - - - - - - - - - - --> - - + - -