From 07762e361606c2c303bed2690dfe9c5406cf9e52 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Tue, 18 Sep 2018 19:22:11 +0800
Subject: [PATCH] update to v1.2.2
---
ChangeLog.txt | 7 ++
HandyControl/Controls/Carousel.xaml.cs | 5 +-
HandyControl/Controls/Steps/StepBar.xaml | 11 ++
HandyControl/Controls/Steps/StepBar.xaml.cs | 98 ++++++++++++++++++
HandyControl/Controls/Steps/StepItem.xaml | 17 +++
HandyControl/Controls/Steps/StepItem.xaml.cs | 72 +++++++++++++
HandyControl/Controls/TabControl/TabItem.cs | 66 +++++++-----
HandyControl/HandyControl.csproj | 15 +++
HandyControl/Interactivity/ControlCommands.cs | 35 +++++++
HandyControl/Properties/AssemblyInfo.cs | 4 +-
.../Properties/Langs/Lang.Designer.cs | 36 +++++++
HandyControl/Properties/Langs/Lang.en.resx | 12 +++
HandyControl/Properties/Langs/Lang.resx | 12 +++
HandyControl/Themes/Basic/Basic.xaml | 16 +--
HandyControl/Themes/Basic/Paths.xaml | 42 ++++----
.../Themes/Styles/Base/BaseStyle.xaml | 4 +-
.../Styles/Base/ButtonBaseBaseStyle.xaml | 8 +-
.../Themes/Styles/Base/ButtonBaseStyle.xaml | 20 ++--
.../Styles/Base/ContextMenuBaseStyle.xaml | 6 +-
.../Themes/Styles/Base/ListBoxBaseStyle.xaml | 4 +-
.../Themes/Styles/Base/LoadingBaseStyle.xaml | 4 +-
.../Styles/Base/LoadingCircleBaseStyle.xaml | 16 +--
.../Styles/Base/LoadingLineBaseStyle.xaml | 4 +-
.../Styles/Base/ScrollViewerBaseStyle.xaml | 10 +-
.../Styles/Base/TextBlockBaseStyle.xaml | 8 +-
.../Styles/Base/ToggleButtonBaseStyle.xaml | 10 +-
.../Base/ToggleButtonSwitchBaseStyle.xaml | 18 ++--
HandyControl/Themes/Styles/Border.xaml | 18 ++--
HandyControl/Themes/Styles/Button.xaml | 20 ++--
.../Themes/Styles/ContentControl.xaml | 2 +-
HandyControl/Themes/Styles/ContextMenu.xaml | 2 +-
HandyControl/Themes/Styles/Expander.xaml | 8 +-
HandyControl/Themes/Styles/ListBox.xaml | 4 +-
HandyControl/Themes/Styles/Loading.xaml | 26 ++---
HandyControl/Themes/Styles/Pagination.xaml | 24 ++---
HandyControl/Themes/Styles/ProgressBar.xaml | 8 +-
HandyControl/Themes/Styles/ScrollViewer.xaml | 2 +-
HandyControl/Themes/Styles/Slider.xaml | 8 +-
HandyControl/Themes/Styles/Style.xaml | 56 +++++-----
HandyControl/Themes/Styles/TabControl.xaml | 18 +++-
HandyControl/Themes/Styles/TextBlock.xaml | 30 +++---
HandyControl/Themes/Styles/ToggleButton.xaml | 22 ++--
HandyControl/Themes/Styles/TreeView.xaml | 18 ++--
HandyControl/Themes/Styles/Window.xaml | 57 +++++-----
HandyControl/Themes/ThemesDefault.xaml | 4 +-
HandyControlDemo/App.xaml.cs | 11 +-
HandyControlDemo/Data/MessageToken.cs | 39 +++----
HandyControlDemo/Data/MessageToken.tt | 41 ++++++++
HandyControlDemo/HandyControlDemo.csproj | 26 +++--
HandyControlDemo/MainWindow.xaml | 12 ++-
HandyControlDemo/Properties/AssemblyInfo.cs | 4 +-
.../Properties/Langs/Lang.Designer.cs | 63 +++++++++++
.../Properties/Langs/Lang.en.resx | 21 ++++
HandyControlDemo/Properties/Langs/Lang.resx | 21 ++++
HandyControlDemo/Tools/AssemblyHelper.cs | 22 ++++
.../UserControl/ControlLocator.cs | 81 ---------------
.../UserControl/ControlLocator.tt | 82 ---------------
.../Controls/AnimationPathDemoCtl.xaml | 2 +-
.../UserControl/Controls/CarouselDemoCtl.xaml | 2 +-
.../Controls/ColorPickerDemoCtl.xaml | 2 +-
.../Controls/CompareSliderDemoCtl.xaml | 2 +-
.../UserControl/Controls/GrowlDemoCtl.xaml | 2 +-
.../Controls/ImageBrowserDemoCtl.xaml | 2 +-
.../UserControl/Controls/LoadingDemoCtl.xaml | 8 +-
.../Controls/PaginationDemoCtl.xaml | 2 +-
.../UserControl/Controls/StepBarDemoCtl.xaml | 23 ++++
.../Controls/StepBarDemoCtl.xaml.cs | 14 +++
.../UserControl/Controls/TimeBarDemoCtl.xaml | 2 +-
.../UserControl/Main/LeftMainContent.xaml | 29 +++---
HandyControlDemo/ViewModel/MainViewModel.cs | 65 +-----------
README.md | 7 +-
Resources/StepBar.gif | Bin 0 -> 58026 bytes
72 files changed, 907 insertions(+), 565 deletions(-)
create mode 100644 HandyControl/Controls/Steps/StepBar.xaml
create mode 100644 HandyControl/Controls/Steps/StepBar.xaml.cs
create mode 100644 HandyControl/Controls/Steps/StepItem.xaml
create mode 100644 HandyControl/Controls/Steps/StepItem.xaml.cs
create mode 100644 HandyControl/Interactivity/ControlCommands.cs
create mode 100644 HandyControlDemo/Data/MessageToken.tt
create mode 100644 HandyControlDemo/Tools/AssemblyHelper.cs
delete mode 100644 HandyControlDemo/UserControl/ControlLocator.cs
delete mode 100644 HandyControlDemo/UserControl/ControlLocator.tt
create mode 100644 HandyControlDemo/UserControl/Controls/StepBarDemoCtl.xaml
create mode 100644 HandyControlDemo/UserControl/Controls/StepBarDemoCtl.xaml.cs
create mode 100644 Resources/StepBar.gif
diff --git a/ChangeLog.txt b/ChangeLog.txt
index 6a3c4ef5..21ac03f4 100644
--- a/ChangeLog.txt
+++ b/ChangeLog.txt
@@ -1,3 +1,10 @@
+2018.09.18 Version 1.2.2
+* new controls
+ - add StepBar
+
+* other
+- update HandyControlDemo UI
+
2018.09.04 Version 1.2.1
* new controls
- add TabControl
diff --git a/HandyControl/Controls/Carousel.xaml.cs b/HandyControl/Controls/Carousel.xaml.cs
index c1cbde80..6aff0bbe 100644
--- a/HandyControl/Controls/Carousel.xaml.cs
+++ b/HandyControl/Controls/Carousel.xaml.cs
@@ -158,7 +158,8 @@ namespace HandyControl.Controls
var width = .0;
foreach (FrameworkElement item in ListBoxMain.Items)
{
- width += item.Width + item.Margin.Left + item.Margin.Right;
+ item.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
+ width += item.DesiredSize.Width;
_widthList.Add(width);
}
@@ -197,7 +198,7 @@ namespace HandyControl.Controls
else
{
var ctl = (FrameworkElement)Items[PageIndex];
- var ctlWidth = ctl.Width + ctl.Margin.Left + ctl.Margin.Right;
+ var ctlWidth = ctl.DesiredSize.Width;
ListBoxMain.BeginAnimation(MarginProperty,
AnimationHelper.CreateAnimation(
new Thickness(-_widthList[PageIndex] + (ActualWidth - ctlWidth) / 2, 0, 0, 0)));
diff --git a/HandyControl/Controls/Steps/StepBar.xaml b/HandyControl/Controls/Steps/StepBar.xaml
new file mode 100644
index 00000000..927c3c89
--- /dev/null
+++ b/HandyControl/Controls/Steps/StepBar.xaml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/HandyControl/Controls/Steps/StepBar.xaml.cs b/HandyControl/Controls/Steps/StepBar.xaml.cs
new file mode 100644
index 00000000..0359bea6
--- /dev/null
+++ b/HandyControl/Controls/Steps/StepBar.xaml.cs
@@ -0,0 +1,98 @@
+using System.Collections.Generic;
+using System.Windows.Controls.Primitives;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Media;
+using HandyControl.Interactivity;
+using HandyControl.Tools;
+
+// ReSharper disable once CheckNamespace
+namespace HandyControl.Controls
+{
+ ///
+ /// Steps.xaml 的交互逻辑
+ ///
+ [ContentProperty("Items")]
+ public partial class StepBar
+ {
+ private bool _isLoaded;
+
+ public StepBar()
+ {
+ InitializeComponent();
+
+ Loaded += (s1, e1) =>
+ {
+ if (_isLoaded) return;
+ UpdateItems(Items);
+
+ CommandBindings.Add(new CommandBinding(ControlCommands.Next, (s, e) => Next()));
+ CommandBindings.Add(new CommandBinding(ControlCommands.Prev, (s, e) => Prev()));
+
+ _isLoaded = true;
+ };
+ }
+
+ public int StepIndex { get; private set; }
+
+ public List Items { get; set; } = new List();
+
+ private void UpdateItems(IReadOnlyCollection list)
+ {
+ if (list == null) return;
+ UniformGridMain.Children.Clear();
+
+ var index = 1;
+ foreach (var item in list)
+ {
+ item.Index = index;
+ item.IndexStr = $"{Properties.Langs.Lang.Step}{index}";
+ UniformGridMain.Children.Add(item);
+ index++;
+ }
+ }
+
+ protected override void OnRender(DrawingContext drawingContext)
+ {
+ base.OnRender(drawingContext);
+
+ var colCount = UniformGridMain.Children.Count;
+ if (colCount <= 0) return;
+ ProgressBarBack.Width = (colCount - 1) * (ActualWidth / colCount);
+ ProgressBarBack.Value = 0;
+ ProgressBarBack.Maximum = colCount - 1;
+ }
+
+
+
+ public void Next()
+ {
+ StepIndex++;
+ if (StepIndex >= UniformGridMain.Children.Count)
+ {
+ StepIndex = UniformGridMain.Children.Count - 1;
+ return;
+ }
+ if (UniformGridMain.Children[StepIndex - 1] is StepItem stepItemFinished)
+ stepItemFinished.Status = true;
+ if (UniformGridMain.Children[StepIndex] is StepItem stepItemSelected)
+ stepItemSelected.Status = false;
+ ProgressBarBack.BeginAnimation(RangeBase.ValueProperty, AnimationHelper.CreateAnimation(StepIndex));
+ }
+
+ public void Prev()
+ {
+ StepIndex--;
+ if (StepIndex < 0)
+ {
+ StepIndex = 0;
+ return;
+ }
+ if (UniformGridMain.Children[StepIndex + 1] is StepItem stepItemFinished)
+ stepItemFinished.Status = null;
+ if (UniformGridMain.Children[StepIndex] is StepItem stepItemSelected)
+ stepItemSelected.Status = false;
+ ProgressBarBack.BeginAnimation(RangeBase.ValueProperty, AnimationHelper.CreateAnimation(StepIndex));
+ }
+ }
+}
\ No newline at end of file
diff --git a/HandyControl/Controls/Steps/StepItem.xaml b/HandyControl/Controls/Steps/StepItem.xaml
new file mode 100644
index 00000000..cedcde3f
--- /dev/null
+++ b/HandyControl/Controls/Steps/StepItem.xaml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/HandyControl/Controls/Steps/StepItem.xaml.cs b/HandyControl/Controls/Steps/StepItem.xaml.cs
new file mode 100644
index 00000000..15ca33b2
--- /dev/null
+++ b/HandyControl/Controls/Steps/StepItem.xaml.cs
@@ -0,0 +1,72 @@
+using System.Windows;
+using System.Windows.Media;
+
+// ReSharper disable once CheckNamespace
+namespace HandyControl.Controls
+{
+ ///
+ /// StepItem.xaml 的交互逻辑
+ ///
+ public partial class StepItem
+ {
+ public StepItem()
+ {
+ InitializeComponent();
+ }
+
+ internal static readonly DependencyProperty IndexProperty = DependencyProperty.Register(
+ "Index", typeof(int), typeof(StepItem), new PropertyMetadata(-1));
+
+ internal int Index
+ {
+ get => (int)GetValue(IndexProperty);
+ set => SetValue(IndexProperty, value);
+ }
+
+ internal static readonly DependencyProperty IndexStrProperty = DependencyProperty.Register(
+ "IndexStr", typeof(string), typeof(StepItem), new PropertyMetadata(default(string)));
+
+ internal string IndexStr
+ {
+ get => (string) GetValue(IndexStrProperty);
+ set => SetValue(IndexStrProperty, value);
+ }
+
+ public static readonly DependencyProperty TitleProperty = DependencyProperty.Register(
+ "Title", typeof(string), typeof(StepItem), new PropertyMetadata(default(string)));
+
+ public string Title
+ {
+ get => (string)GetValue(TitleProperty);
+ set => SetValue(TitleProperty, value);
+ }
+
+ private bool? _status;
+
+ public bool? Status
+ {
+ get => _status;
+ set
+ {
+ _status = value;
+ UpdateStatus();
+ }
+ }
+
+ private void UpdateStatus()
+ {
+ if (Status == true)
+ {
+ Foreground = TryFindResource("PrimaryBrush") as Brush;
+ }
+ else if (Status == false)
+ {
+ Foreground = TryFindResource("PrimaryTextBrush") as Brush;
+ }
+ else
+ {
+ Foreground = TryFindResource("ThirdlyTextBrush") as Brush;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/HandyControl/Controls/TabControl/TabItem.cs b/HandyControl/Controls/TabControl/TabItem.cs
index 5d5f4610..284a815f 100644
--- a/HandyControl/Controls/TabControl/TabItem.cs
+++ b/HandyControl/Controls/TabControl/TabItem.cs
@@ -1,9 +1,11 @@
using System;
+using System.Collections;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
+using HandyControl.Interactivity;
using HandyControl.Tools;
// ReSharper disable once CheckNamespace
@@ -137,19 +139,26 @@ namespace HandyControl.Controls
_tabPanel = VisualParent as TabPanel;
_isLoaded = true;
};
- //CommandBindings.Add(new CommandBinding(CloseOtherCommand, (s, e) =>
- //{
- // var enumerator = ((IEnumerable)TabControlParent.Items).GetEnumerator();
- // while (enumerator.MoveNext())
- // {
- // var item = enumerator.Current;
- // if (!Equals(item) && item != null)
- // {
- // TabControlParent.Items.Remove(item);
- // enumerator = ((IEnumerable)TabControlParent.Items).GetEnumerator();
- // }
- // }
- //}));
+ CommandBindings.Add(new CommandBinding(ControlCommands.Close, Close));
+ CommandBindings.Add(new CommandBinding(ControlCommands.CloseAll, (s, e) =>
+ {
+ TabControlParent.IsInternalAction = true;
+ TabControlParent.Items.Clear();
+ }));
+ CommandBindings.Add(new CommandBinding(ControlCommands.CloseOther, (s, e) =>
+ {
+ TabControlParent.IsInternalAction = true;
+ var enumerator = ((IEnumerable)TabControlParent.Items).GetEnumerator();
+ while (enumerator.MoveNext())
+ {
+ var item = enumerator.Current;
+ if (!Equals(item) && item != null)
+ {
+ TabControlParent.Items.Remove(item);
+ enumerator = ((IEnumerable)TabControlParent.Items).GetEnumerator();
+ }
+ }
+ }));
}
private TabControl TabControlParent => new Lazy(() => ItemsControl.ItemsControlFromItemContainer(this) as TabControl).Value;
@@ -167,22 +176,27 @@ namespace HandyControl.Controls
_buttonClose = Template.FindName(CloseButtonKey, this) as Button;
if (_buttonClose != null)
{
- _buttonClose.Click += (s, e) =>
- {
- if (TabControlParent.IsEnableAnimation)
- {
- _tabPanel.ClearValue(TabPanel.FluidMoveDurationProperty);
- }
- else
- {
- _tabPanel.FluidMoveDuration = new Duration(TimeSpan.FromSeconds(0));
- }
- TabControlParent.IsInternalAction = true;
- TabControlParent.Items.Remove(this);
- };
+ _buttonClose.Click += Close;
}
}
+ ///
+ /// 关闭
+ ///
+ private void Close(object sender, RoutedEventArgs e)
+ {
+ if (TabControlParent.IsEnableAnimation)
+ {
+ _tabPanel.ClearValue(TabPanel.FluidMoveDurationProperty);
+ }
+ else
+ {
+ _tabPanel.FluidMoveDuration = new Duration(TimeSpan.FromSeconds(0));
+ }
+ TabControlParent.IsInternalAction = true;
+ TabControlParent.Items.Remove(this);
+ }
+
protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
{
base.OnMouseLeftButtonDown(e);
diff --git a/HandyControl/HandyControl.csproj b/HandyControl/HandyControl.csproj
index 03422c79..70930dde 100644
--- a/HandyControl/HandyControl.csproj
+++ b/HandyControl/HandyControl.csproj
@@ -65,6 +65,12 @@
Pagination.xaml
+
+ StepBar.xaml
+
+
+ StepItem.xaml
+
@@ -90,6 +96,7 @@
+
@@ -176,6 +183,14 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
diff --git a/HandyControl/Interactivity/ControlCommands.cs b/HandyControl/Interactivity/ControlCommands.cs
new file mode 100644
index 00000000..f8c0da9c
--- /dev/null
+++ b/HandyControl/Interactivity/ControlCommands.cs
@@ -0,0 +1,35 @@
+using System.Windows.Input;
+
+namespace HandyControl.Interactivity
+{
+ ///
+ /// 控件库使用的所有命令
+ ///
+ public static class ControlCommands
+ {
+ ///
+ /// 关闭
+ ///
+ public static RoutedCommand Close { get; } = new RoutedCommand("Close", typeof(ControlCommands));
+
+ ///
+ /// 关闭所有
+ ///
+ public static RoutedCommand CloseAll { get; } = new RoutedCommand("CloseAll", typeof(ControlCommands));
+
+ ///
+ /// 关闭其他
+ ///
+ public static RoutedCommand CloseOther { get; } = new RoutedCommand("CloseOther", typeof(ControlCommands));
+
+ ///
+ /// 上一个
+ ///
+ public static RoutedCommand Prev { get; } = new RoutedCommand("Prev", typeof(ControlCommands));
+
+ ///
+ /// 下一个
+ ///
+ public static RoutedCommand Next { get; } = new RoutedCommand("Next", typeof(ControlCommands));
+ }
+}
\ No newline at end of file
diff --git a/HandyControl/Properties/AssemblyInfo.cs b/HandyControl/Properties/AssemblyInfo.cs
index abaf7381..b361fd77 100644
--- a/HandyControl/Properties/AssemblyInfo.cs
+++ b/HandyControl/Properties/AssemblyInfo.cs
@@ -10,5 +10,5 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("1.2.1.2")]
-[assembly: AssemblyFileVersion("1.2.1.2")]
+[assembly: AssemblyVersion("1.2.2.0")]
+[assembly: AssemblyFileVersion("1.2.2.0")]
diff --git a/HandyControl/Properties/Langs/Lang.Designer.cs b/HandyControl/Properties/Langs/Lang.Designer.cs
index 7cd624cd..910aa34a 100644
--- a/HandyControl/Properties/Langs/Lang.Designer.cs
+++ b/HandyControl/Properties/Langs/Lang.Designer.cs
@@ -78,6 +78,33 @@ namespace HandyControl.Properties.Langs {
}
}
+ ///
+ /// 查找类似 关闭 的本地化字符串。
+ ///
+ public static string Close {
+ get {
+ return ResourceManager.GetString("Close", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 关闭所有 的本地化字符串。
+ ///
+ public static string CloseAll {
+ get {
+ return ResourceManager.GetString("CloseAll", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 关闭其他 的本地化字符串。
+ ///
+ public static string CloseOther {
+ get {
+ return ResourceManager.GetString("CloseOther", resourceCulture);
+ }
+ }
+
///
/// 查找类似 确定 的本地化字符串。
///
@@ -177,6 +204,15 @@ namespace HandyControl.Properties.Langs {
}
}
+ ///
+ /// 查找类似 步骤 的本地化字符串。
+ ///
+ public static string Step {
+ get {
+ return ResourceManager.GetString("Step", resourceCulture);
+ }
+ }
+
///
/// 查找类似 过大 的本地化字符串。
///
diff --git a/HandyControl/Properties/Langs/Lang.en.resx b/HandyControl/Properties/Langs/Lang.en.resx
index bb8c6c34..cd3e0ba2 100644
--- a/HandyControl/Properties/Langs/Lang.en.resx
+++ b/HandyControl/Properties/Langs/Lang.en.resx
@@ -165,4 +165,16 @@
Clear
+
+ Step
+
+
+ Close
+
+
+ Close all
+
+
+ Close other
+
\ No newline at end of file
diff --git a/HandyControl/Properties/Langs/Lang.resx b/HandyControl/Properties/Langs/Lang.resx
index c3ea80ca..9cee4020 100644
--- a/HandyControl/Properties/Langs/Lang.resx
+++ b/HandyControl/Properties/Langs/Lang.resx
@@ -145,4 +145,16 @@
清空
+
+ 步骤
+
+
+ 关闭
+
+
+ 关闭所有
+
+
+ 关闭其他
+
\ No newline at end of file
diff --git a/HandyControl/Themes/Basic/Basic.xaml b/HandyControl/Themes/Basic/Basic.xaml
index 093410f4..5d113db2 100644
--- a/HandyControl/Themes/Basic/Basic.xaml
+++ b/HandyControl/Themes/Basic/Basic.xaml
@@ -2,14 +2,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/HandyControl/Themes/Basic/Paths.xaml b/HandyControl/Themes/Basic/Paths.xaml
index 583e967c..8613e529 100644
--- a/HandyControl/Themes/Basic/Paths.xaml
+++ b/HandyControl/Themes/Basic/Paths.xaml
@@ -2,92 +2,92 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
+
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/BaseStyle.xaml b/HandyControl/Themes/Styles/Base/BaseStyle.xaml
index 6f9dbba1..0c182c66 100644
--- a/HandyControl/Themes/Styles/Base/BaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/BaseStyle.xaml
@@ -2,8 +2,8 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/ButtonBaseBaseStyle.xaml b/HandyControl/Themes/Styles/Base/ButtonBaseBaseStyle.xaml
index b3d31de3..86903ef0 100644
--- a/HandyControl/Themes/Styles/Base/ButtonBaseBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/ButtonBaseBaseStyle.xaml
@@ -2,20 +2,20 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
+
diff --git a/HandyControl/Themes/Styles/Base/ButtonBaseStyle.xaml b/HandyControl/Themes/Styles/Base/ButtonBaseStyle.xaml
index 3f9000fe..309e8634 100644
--- a/HandyControl/Themes/Styles/Base/ButtonBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/ButtonBaseStyle.xaml
@@ -3,11 +3,11 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
+
diff --git a/HandyControl/Themes/Styles/Base/ContextMenuBaseStyle.xaml b/HandyControl/Themes/Styles/Base/ContextMenuBaseStyle.xaml
index db073d71..237d4bed 100644
--- a/HandyControl/Themes/Styles/Base/ContextMenuBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/ContextMenuBaseStyle.xaml
@@ -3,7 +3,7 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
+
@@ -92,7 +92,7 @@
-
+
@@ -209,7 +209,7 @@
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/LoadingCircleBaseStyle.xaml b/HandyControl/Themes/Styles/Base/LoadingCircleBaseStyle.xaml
index cca16378..4026123f 100644
--- a/HandyControl/Themes/Styles/Base/LoadingCircleBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/LoadingCircleBaseStyle.xaml
@@ -3,17 +3,17 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
+
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/LoadingLineBaseStyle.xaml b/HandyControl/Themes/Styles/Base/LoadingLineBaseStyle.xaml
index 4efa6878..22737120 100644
--- a/HandyControl/Themes/Styles/Base/LoadingLineBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/LoadingLineBaseStyle.xaml
@@ -3,11 +3,11 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
+
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/ScrollViewerBaseStyle.xaml b/HandyControl/Themes/Styles/Base/ScrollViewerBaseStyle.xaml
index c1378e38..198893b8 100644
--- a/HandyControl/Themes/Styles/Base/ScrollViewerBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/ScrollViewerBaseStyle.xaml
@@ -58,9 +58,9 @@
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/TextBlockBaseStyle.xaml b/HandyControl/Themes/Styles/Base/TextBlockBaseStyle.xaml
index b9603458..8f2b109d 100644
--- a/HandyControl/Themes/Styles/Base/TextBlockBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/TextBlockBaseStyle.xaml
@@ -3,13 +3,13 @@
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Base/ToggleButtonBaseStyle.xaml b/HandyControl/Themes/Styles/Base/ToggleButtonBaseStyle.xaml
index 3db1189a..27e68c78 100644
--- a/HandyControl/Themes/Styles/Base/ToggleButtonBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/ToggleButtonBaseStyle.xaml
@@ -3,11 +3,11 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
+
diff --git a/HandyControl/Themes/Styles/Base/ToggleButtonSwitchBaseStyle.xaml b/HandyControl/Themes/Styles/Base/ToggleButtonSwitchBaseStyle.xaml
index 49c88fd9..aff81b8c 100644
--- a/HandyControl/Themes/Styles/Base/ToggleButtonSwitchBaseStyle.xaml
+++ b/HandyControl/Themes/Styles/Base/ToggleButtonSwitchBaseStyle.xaml
@@ -141,14 +141,14 @@
diff --git a/HandyControl/Themes/Styles/Border.xaml b/HandyControl/Themes/Styles/Border.xaml
index 2a744837..174be80e 100644
--- a/HandyControl/Themes/Styles/Border.xaml
+++ b/HandyControl/Themes/Styles/Border.xaml
@@ -4,21 +4,21 @@
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Button.xaml b/HandyControl/Themes/Styles/Button.xaml
index 86b39ae0..dad7de8f 100644
--- a/HandyControl/Themes/Styles/Button.xaml
+++ b/HandyControl/Themes/Styles/Button.xaml
@@ -3,7 +3,7 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
+
@@ -73,15 +73,15 @@
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/ContextMenu.xaml b/HandyControl/Themes/Styles/ContextMenu.xaml
index 419f5a1c..9b848fa5 100644
--- a/HandyControl/Themes/Styles/ContextMenu.xaml
+++ b/HandyControl/Themes/Styles/ContextMenu.xaml
@@ -2,7 +2,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
+
diff --git a/HandyControl/Themes/Styles/Expander.xaml b/HandyControl/Themes/Styles/Expander.xaml
index ec08bcb6..068c1ca5 100644
--- a/HandyControl/Themes/Styles/Expander.xaml
+++ b/HandyControl/Themes/Styles/Expander.xaml
@@ -3,9 +3,9 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
-
-
+
+
+
diff --git a/HandyControl/Themes/Styles/Loading.xaml b/HandyControl/Themes/Styles/Loading.xaml
index 8e5d4010..5c71d8b9 100644
--- a/HandyControl/Themes/Styles/Loading.xaml
+++ b/HandyControl/Themes/Styles/Loading.xaml
@@ -3,43 +3,43 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
-
+
+
\ No newline at end of file
diff --git a/HandyControl/Themes/Styles/Pagination.xaml b/HandyControl/Themes/Styles/Pagination.xaml
index 96243c0a..97ef3fb4 100644
--- a/HandyControl/Themes/Styles/Pagination.xaml
+++ b/HandyControl/Themes/Styles/Pagination.xaml
@@ -3,18 +3,18 @@
diff --git a/HandyControl/Themes/Styles/ProgressBar.xaml b/HandyControl/Themes/Styles/ProgressBar.xaml
index ed718a2f..377efff5 100644
--- a/HandyControl/Themes/Styles/ProgressBar.xaml
+++ b/HandyControl/Themes/Styles/ProgressBar.xaml
@@ -2,7 +2,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
+
diff --git a/HandyControl/Themes/Styles/ToggleButton.xaml b/HandyControl/Themes/Styles/ToggleButton.xaml
index a127aa46..18324be7 100644
--- a/HandyControl/Themes/Styles/ToggleButton.xaml
+++ b/HandyControl/Themes/Styles/ToggleButton.xaml
@@ -3,8 +3,8 @@
xmlns:controls="clr-namespace:HandyControl.Controls">
-
-
+
+
@@ -73,7 +73,7 @@
-
+
@@ -86,15 +86,15 @@