From a2684e679e4c5d5baffcdb2c3ff7cef188fc9953 Mon Sep 17 00:00:00 2001
From: guanguanchuangyu <3246907890@qq.com>
Date: Mon, 18 Nov 2019 21:31:00 +0800
Subject: [PATCH 01/17] add doc of visualelement and windowattach
---
.../attach/visualElement/index.md | 78 ++++++++++++++++++-
.../handycontrol/attach/windowAttach/index.md | 55 ++++++++++++-
2 files changed, 129 insertions(+), 4 deletions(-)
diff --git a/doc/source/handycontrol/attach/visualElement/index.md b/doc/source/handycontrol/attach/visualElement/index.md
index ca12ad62..b7572a01 100644
--- a/doc/source/handycontrol/attach/visualElement/index.md
+++ b/doc/source/handycontrol/attach/visualElement/index.md
@@ -1,5 +1,79 @@
---
-title: 建设中
+title: VisualElement 可视化元素
---
-建设中
\ No newline at end of file
+# 属性
+
+| 名称 | 用途 |
+| -------------- | ---------------- |
+| HighlightBrush | 设置控件高亮颜色 |
+| Text | 设置文本内容 |
+
+# 使用案例
+
+对应`xaml`中添加`HandyControl`对应的命名空`xmlns:hc="https://handyorg.github.io/handycontrol"`
+
+## HighlightBrush 设置控件高亮颜色
+
+```xml
+
+
+
+
+```
+
+如下截图为一组选中状态时的高亮对比结果,左图为样式`默认颜色`,右侧为个人`自定义颜色`
+
+
+
+## Text 设置文本内容
+
+可视化文本内容,主要用于微软`WPF`库中原生控件需要显示辅助文本,但并没有对应的文本内容显示属性时,通过控件的自定义样式时,使用此附加属性进行进行文本内容的显示。
+
+例如:当自定义进度条,需要显示文本时,本身缺少显示额外文本内容的属性,可以通过自定样式显示对应文本,以`Text`作为文本内容承载属性
+
+自定义样式:
+
+```xml
+
+```
+
+`xaml`中的使用:
+
+```xml
+
+
+
+```
+
+效果:
+
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/attach/windowAttach/index.md b/doc/source/handycontrol/attach/windowAttach/index.md
index ca12ad62..ecf59116 100644
--- a/doc/source/handycontrol/attach/windowAttach/index.md
+++ b/doc/source/handycontrol/attach/windowAttach/index.md
@@ -1,5 +1,56 @@
---
-title: 建设中
+title: WindowAttach 窗体专用
---
-建设中
\ No newline at end of file
+# 属性
+
+| 名称 | 用途 |
+| ----------------- | ------------------------------------------------------------ |
+| IsDragElement | 是否允许当前元素可拖动窗体 |
+| IgnoreAltF4 | 是否忽略快捷键Alt和F4(键盘快速退出或者 结束 当前正在运行的应用程序) |
+| ShowInTaskManager | 是否窗体显示到任务管理器中 |
+
+# 使用案例
+
+对应`xaml`中添加`HandyControl`对应的命名空`xmlns:hc="https://handyorg.github.io/handycontrol"`
+
+```xml
+
+
+
+
+
+
+
+
+
+```
+
+可在深色框区域鼠标拖动窗体
+
+
+
+# IgnoreAltF4 是否忽略快捷键Alt和F4
+
+常用于自定义设定需要手动关闭当前激活状态的应用程序,如`HandyControl`中的`Notifycation`或者`NotifyIcon`控件,默认为False
+
+```xml
+
+```
+
+## ShowInTaskManager 是否窗体显示到任务管理器中
+
+设定`Window`控件及其子类是否显示在任务管理器中
+
+使用前提:
+
+- 窗体的实例显示时,不使用`ShowDialog`
+- 同时设置`ShowInTaskBar`为`false`
+
+ps:该附加属性在`Windows7`中效果不是很明显
\ No newline at end of file
From e4fea42e72dda4461e85135c07b299b6dd69bb55 Mon Sep 17 00:00:00 2001
From: afunc233
Date: Sun, 24 Nov 2019 21:26:11 +0800
Subject: [PATCH 02/17] doc for GroupBox
---
.../native_controls/expander/index.md | 2 +-
.../native_controls/groupBox/index.md | 88 ++++++++++++++++++-
2 files changed, 87 insertions(+), 3 deletions(-)
diff --git a/doc/source/handycontrol/native_controls/expander/index.md b/doc/source/handycontrol/native_controls/expander/index.md
index e3877e56..094e9c99 100644
--- a/doc/source/handycontrol/native_controls/expander/index.md
+++ b/doc/source/handycontrol/native_controls/expander/index.md
@@ -7,7 +7,7 @@ title: Expander 展开框
Expander 展开框 默认样式,不推荐直接使用,应该始终被其它样式以BasedOn的方式使用。
{% note info no-icon %}
-
+用例:
{% code %}
diff --git a/doc/source/handycontrol/native_controls/groupBox/index.md b/doc/source/handycontrol/native_controls/groupBox/index.md
index ca12ad62..f9a26ef8 100644
--- a/doc/source/handycontrol/native_controls/groupBox/index.md
+++ b/doc/source/handycontrol/native_controls/groupBox/index.md
@@ -1,5 +1,89 @@
---
-title: 建设中
+title: GroupBox 分组框
---
-建设中
\ No newline at end of file
+# GroupBoxBaseStyle
+
+GroupBox 分组框 默认样式,不推荐直接使用,应该始终被其它样式以BasedOn的方式使用。
+
+{% note info no-icon %}
+用例:
+{% code %}
+
+
+
+
+
+{% endcode %}
+
+{% endnote %}
+
+这里提供另外一种样式,供开发者选择
+
+{% note info no-icon %}
+只需要添加扩展属性即可
+{% code %}
+hc:TitleElement.TitleAlignment="Left"
+{% endcode %}
+用例:
+{% code %}
+
+
+
+
+
+{% endcode %}
+
+
+{% endnote %}
+
+---
+
+# GroupBoxTab : GroupBoxTabBaseStyle : GroupBoxBaseStyle
+
+GroupBox 分组框 的另一种样式 GroupBoxTabBaseStyle 不推荐直接使用,应该始终被其它样式以BasedOn的方式使用。
+
+{% note info no-icon %}
+用例:
+{% code %}
+
+
+
+
+
+{% endcode %}
+
+- 同样可以 使用扩展属性 {% code %} hc:TitleElement.TitleAlignment="Left" {% endcode %}
+
+ 
+{% endnote %}
+
+
+---
+
+# GroupBoxOriginal : GroupBoxOriginalBaseStyle : GroupBoxBaseStyle
+
+GroupBox 分组框 的另一种样式 GroupBoxOriginalBaseStyle 不推荐直接使用,应该始终被其它样式以BasedOn的方式使用。
+
+{% note info no-icon %}
+用例:
+{% code %}
+
+
+
+
+
+
+{% endcode %}
+
+ 
+{% endnote %}
\ No newline at end of file
From db299d4fe9b0d4f2b58f2a052d70d23a426d2efb Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Wed, 27 Nov 2019 23:52:23 +0800
Subject: [PATCH 03/17] fixed #227
---
.../Styles/Base/ScrollViewerBaseStyle.xaml | 28 +++++++++++--------
1 file changed, 16 insertions(+), 12 deletions(-)
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ScrollViewerBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ScrollViewerBaseStyle.xaml
index 27c91169..8395e603 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ScrollViewerBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ScrollViewerBaseStyle.xaml
@@ -237,12 +237,14 @@
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -285,12 +287,14 @@
-
-
-
-
-
-
+
+
+
+
+
+
+
+
From c8fd7955742a1adf1ef092ab544e422413277639 Mon Sep 17 00:00:00 2001
From: Mahdi Hosseini
Date: Thu, 28 Nov 2019 16:24:10 +0330
Subject: [PATCH 04/17] Fixed #184
---
.../Animation/GeometryAnimationUsingKeyFrames.cs | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
index fbfc8787..73752b24 100644
--- a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
+++ b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
@@ -38,7 +38,15 @@ namespace HandyControl.Media.Animation
private bool _areKeyTimesValid;
- public GeometryAnimationUsingKeyFrames() => _areKeyTimesValid = true;
+ public GeometryAnimationUsingKeyFrames()
+ {
+ var currentCulture = System.Threading.Thread.CurrentThread.CurrentCulture.Parent.Name;
+ if (!currentCulture.Equals("en", StringComparison.OrdinalIgnoreCase))
+ {
+ System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
+ }
+ _areKeyTimesValid = true;
+ }
public new GeometryAnimationUsingKeyFrames Clone() => (GeometryAnimationUsingKeyFrames)base.Clone();
@@ -516,4 +524,4 @@ namespace HandyControl.Media.Animation
while (index < maxKeyFrameIndex);
}
}
-}
\ No newline at end of file
+}
From e05b932063b7c9ec6fada21090e3f95d19eac8a9 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Thu, 28 Nov 2019 21:59:20 +0800
Subject: [PATCH 05/17] modified some descriptions
---
.../handycontrol/attach/visualElement/index.md | 4 +---
.../handycontrol/attach/windowAttach/index.md | 14 ++++++--------
2 files changed, 7 insertions(+), 11 deletions(-)
diff --git a/doc/source/handycontrol/attach/visualElement/index.md b/doc/source/handycontrol/attach/visualElement/index.md
index b7572a01..548af7e3 100644
--- a/doc/source/handycontrol/attach/visualElement/index.md
+++ b/doc/source/handycontrol/attach/visualElement/index.md
@@ -11,8 +11,6 @@ title: VisualElement 可视化元素
# 使用案例
-对应`xaml`中添加`HandyControl`对应的命名空`xmlns:hc="https://handyorg.github.io/handycontrol"`
-
## HighlightBrush 设置控件高亮颜色
```xml
@@ -35,7 +33,7 @@ title: VisualElement 可视化元素
## Text 设置文本内容
-可视化文本内容,主要用于微软`WPF`库中原生控件需要显示辅助文本,但并没有对应的文本内容显示属性时,通过控件的自定义样式时,使用此附加属性进行进行文本内容的显示。
+主要用于设置控件的辅助文本,当控件没有合适的属性用于显示文本时,可通过此附加属性在自定义样式中设置。
例如:当自定义进度条,需要显示文本时,本身缺少显示额外文本内容的属性,可以通过自定样式显示对应文本,以`Text`作为文本内容承载属性
diff --git a/doc/source/handycontrol/attach/windowAttach/index.md b/doc/source/handycontrol/attach/windowAttach/index.md
index ecf59116..5847a3a4 100644
--- a/doc/source/handycontrol/attach/windowAttach/index.md
+++ b/doc/source/handycontrol/attach/windowAttach/index.md
@@ -12,7 +12,7 @@ title: WindowAttach 窗体专用
# 使用案例
-对应`xaml`中添加`HandyControl`对应的命名空`xmlns:hc="https://handyorg.github.io/handycontrol"`
+## IsDragElement 是否允许当前元素可拖动窗体
```xml
```
-## ShowInTaskManager 是否窗体显示到任务管理器中
-
-设定`Window`控件及其子类是否显示在任务管理器中
+## ShowInTaskManager 是否将窗体显示到任务管理器中
使用前提:
-- 窗体的实例显示时,不使用`ShowDialog`
-- 同时设置`ShowInTaskBar`为`false`
+- 窗口必须为非模态窗口,即不能使用`ShowDialog`显示窗口。
+- 窗口必须同时设置`ShowInTaskBar`为`false`
ps:该附加属性在`Windows7`中效果不是很明显
\ No newline at end of file
From daa406e7d1cd48e4871bd98f42baf61c5ac25c10 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Thu, 28 Nov 2019 22:18:41 +0800
Subject: [PATCH 06/17] Update index.md
---
doc/source/handycontrol/native_controls/groupBox/index.md | 5 -----
1 file changed, 5 deletions(-)
diff --git a/doc/source/handycontrol/native_controls/groupBox/index.md b/doc/source/handycontrol/native_controls/groupBox/index.md
index f9a26ef8..4a83ce35 100644
--- a/doc/source/handycontrol/native_controls/groupBox/index.md
+++ b/doc/source/handycontrol/native_controls/groupBox/index.md
@@ -41,8 +41,6 @@ hc:TitleElement.TitleAlignment="Left"

{% endnote %}
----
-
# GroupBoxTab : GroupBoxTabBaseStyle : GroupBoxBaseStyle
GroupBox 分组框 的另一种样式 GroupBoxTabBaseStyle 不推荐直接使用,应该始终被其它样式以BasedOn的方式使用。
@@ -64,9 +62,6 @@ GroupBox 分组框 的另一种样式 GroupBoxTabBaseStyle 不推荐直接使
 
{% endnote %}
-
----
-
# GroupBoxOriginal : GroupBoxOriginalBaseStyle : GroupBoxBaseStyle
GroupBox 分组框 的另一种样式 GroupBoxOriginalBaseStyle 不推荐直接使用,应该始终被其它样式以BasedOn的方式使用。
From df19364b66164c1bcfcd23b4d2bd3b726ed09da3 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Thu, 28 Nov 2019 22:41:21 +0800
Subject: [PATCH 07/17] Update index.md
---
doc/source/handycontrol/tnx/index.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/doc/source/handycontrol/tnx/index.md b/doc/source/handycontrol/tnx/index.md
index dcc4f1d7..6e4e1daa 100644
--- a/doc/source/handycontrol/tnx/index.md
+++ b/doc/source/handycontrol/tnx/index.md
@@ -12,4 +12,4 @@ title: 鸣谢
# 感谢以下捐赠者
-




\ No newline at end of file
+







\ No newline at end of file
From ca344f5a717eae4d7480d43b3c3dc86c47954fd3 Mon Sep 17 00:00:00 2001
From: Mahdi
Date: Thu, 28 Nov 2019 20:29:19 +0330
Subject: [PATCH 08/17] fix
---
.../Media/Animation/GeometryAnimation.cs | 2 +-
.../Media/Animation/GeometryAnimationUsingKeyFrames.cs | 6 +-----
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs
index 9ae41362..91affe56 100644
--- a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs
+++ b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs
@@ -20,7 +20,7 @@ namespace HandyControl.Media.Animation
public GeometryAnimation()
{
-
+ System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
}
public GeometryAnimation(string fromValue, string toValue) : this()
diff --git a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
index 73752b24..b26ecb17 100644
--- a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
+++ b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
@@ -40,11 +40,7 @@ namespace HandyControl.Media.Animation
public GeometryAnimationUsingKeyFrames()
{
- var currentCulture = System.Threading.Thread.CurrentThread.CurrentCulture.Parent.Name;
- if (!currentCulture.Equals("en", StringComparison.OrdinalIgnoreCase))
- {
- System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
- }
+ System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
_areKeyTimesValid = true;
}
From c8071f98bd98bab87435d54bde9e24bd695c08c4 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Fri, 29 Nov 2019 22:16:59 +0800
Subject: [PATCH 09/17] move codes to parent class ctor
---
.../Media/Animation/GeometryAnimation.cs | 4 ++--
.../Media/Animation/GeometryAnimationBase.cs | 7 +++++++
.../Media/Animation/GeometryAnimationUsingKeyFrames.cs | 2 --
3 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs
index 91affe56..3c9d7f3e 100644
--- a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs
+++ b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimation.cs
@@ -4,8 +4,8 @@ using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Animation;
using HandyControl.Tools;
-// ReSharper disable PossibleInvalidOperationException
+// ReSharper disable PossibleInvalidOperationException
namespace HandyControl.Media.Animation
{
public class GeometryAnimation : GeometryAnimationBase
@@ -20,7 +20,7 @@ namespace HandyControl.Media.Animation
public GeometryAnimation()
{
- System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
+
}
public GeometryAnimation(string fromValue, string toValue) : this()
diff --git a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationBase.cs b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationBase.cs
index eee8c262..630c8257 100644
--- a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationBase.cs
+++ b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationBase.cs
@@ -1,4 +1,6 @@
using System;
+using System.Globalization;
+using System.Threading;
using System.Windows.Media;
using System.Windows.Media.Animation;
@@ -6,6 +8,11 @@ namespace HandyControl.Media.Animation
{
public abstract class GeometryAnimationBase : AnimationTimeline
{
+ protected GeometryAnimationBase()
+ {
+ Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
+ }
+
public new GeometryAnimationBase Clone() => (GeometryAnimationBase)base.Clone();
public sealed override object GetCurrentValue(object defaultOriginValue, object defaultDestinationValue, AnimationClock animationClock)
diff --git a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
index b26ecb17..c58a8c3e 100644
--- a/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
+++ b/src/Shared/HandyControl_Shared/Media/Animation/GeometryAnimationUsingKeyFrames.cs
@@ -11,7 +11,6 @@ using System.Windows.Media.Animation;
using HandyControl.Tools;
// ReSharper disable PossibleInvalidOperationException
-
namespace HandyControl.Media.Animation
{
[ContentProperty("KeyFrames")]
@@ -40,7 +39,6 @@ namespace HandyControl.Media.Animation
public GeometryAnimationUsingKeyFrames()
{
- System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
_areKeyTimesValid = true;
}
From e1dff31b92477ae22e1eed7fa4a6d9dd76af56e2 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Fri, 29 Nov 2019 22:40:42 +0800
Subject: [PATCH 10/17] update readme
---
README.md | 3 ++-
doc/source/handycontrol/tnx/index.md | 2 +-
.../UserControl/Controls/NotifyIconDemoCtl.xaml | 2 +-
3 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/README.md b/README.md
index 6e820dfc..79d84784 100644
--- a/README.md
+++ b/README.md
@@ -34,6 +34,7 @@
+
## Backers
@@ -44,7 +45,7 @@
-
+
## Special thanks to
diff --git a/doc/source/handycontrol/tnx/index.md b/doc/source/handycontrol/tnx/index.md
index 6e4e1daa..46e4ec5c 100644
--- a/doc/source/handycontrol/tnx/index.md
+++ b/doc/source/handycontrol/tnx/index.md
@@ -12,4 +12,4 @@ title: 鸣谢
# 感谢以下捐赠者
-







\ No newline at end of file
+








\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
index 4149ef39..173073e2 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
@@ -58,7 +58,7 @@
-
+
From f8e551edfcd750382e3644046ded263ada2c4966 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Fri, 29 Nov 2019 22:48:06 +0800
Subject: [PATCH 11/17] Revert "update readme"
This reverts commit e1dff31b92477ae22e1eed7fa4a6d9dd76af56e2.
---
README.md | 3 +--
doc/source/handycontrol/tnx/index.md | 2 +-
.../UserControl/Controls/NotifyIconDemoCtl.xaml | 2 +-
3 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/README.md b/README.md
index 79d84784..6e820dfc 100644
--- a/README.md
+++ b/README.md
@@ -34,7 +34,6 @@
-
## Backers
@@ -45,7 +44,7 @@
-
+
## Special thanks to
diff --git a/doc/source/handycontrol/tnx/index.md b/doc/source/handycontrol/tnx/index.md
index 46e4ec5c..6e4e1daa 100644
--- a/doc/source/handycontrol/tnx/index.md
+++ b/doc/source/handycontrol/tnx/index.md
@@ -12,4 +12,4 @@ title: 鸣谢
# 感谢以下捐赠者
-








\ No newline at end of file
+







\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
index 173073e2..4149ef39 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
@@ -58,7 +58,7 @@
-
+
From 8526d341e2765be72afe0fcb70b684ed2c38c9f3 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Fri, 29 Nov 2019 22:52:21 +0800
Subject: [PATCH 12/17] update readme
---
README.md | 1 +
doc/source/handycontrol/tnx/index.md | 2 +-
.../UserControl/Controls/NotifyIconDemoCtl.xaml | 2 +-
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 6e820dfc..79b7a3f1 100644
--- a/README.md
+++ b/README.md
@@ -34,6 +34,7 @@
+
## Backers
diff --git a/doc/source/handycontrol/tnx/index.md b/doc/source/handycontrol/tnx/index.md
index 6e4e1daa..8f738933 100644
--- a/doc/source/handycontrol/tnx/index.md
+++ b/doc/source/handycontrol/tnx/index.md
@@ -4,7 +4,7 @@ title: 鸣谢
# 感谢以下Coder提供代码贡献
-






+







# 感谢以下组织机构提供开源许可
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
index 4149ef39..173073e2 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/NotifyIconDemoCtl.xaml
@@ -58,7 +58,7 @@
-
+
From 2474e99f1f2634e0ec9b22b1e3d3ca6cb06d4dc6 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Sun, 1 Dec 2019 15:07:13 +0800
Subject: [PATCH 13/17] fixed #241
---
.../HandyControl_Shared/Controls/TabControl/TabItem.cs | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/Shared/HandyControl_Shared/Controls/TabControl/TabItem.cs b/src/Shared/HandyControl_Shared/Controls/TabControl/TabItem.cs
index e78a4491..f0430347 100644
--- a/src/Shared/HandyControl_Shared/Controls/TabControl/TabItem.cs
+++ b/src/Shared/HandyControl_Shared/Controls/TabControl/TabItem.cs
@@ -304,7 +304,7 @@ namespace HandyControl.Controls
ItemIsDragging = true;
_isWaiting = true;
_dragPoint = e.GetPosition(parent);
- _dragPoint = new Point(_dragPoint.X + +_scrollHorizontalOffset, _dragPoint.Y);
+ _dragPoint = new Point(_dragPoint.X + _scrollHorizontalOffset, _dragPoint.Y);
_mouseDownPoint = _dragPoint;
CaptureMouse();
}
@@ -432,6 +432,11 @@ namespace HandyControl.Controls
///
private int CalLocationIndex(double left)
{
+ if (_isWaiting)
+ {
+ return CurrentIndex;
+ }
+
var maxIndex = TabControlParent.Items.Count - 1;
var div = (int)(left / ItemWidth);
var rest = left % ItemWidth;
From e3eab0fada391ec1b7fd4e702680451c7bc096c3 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Sun, 1 Dec 2019 19:10:58 +0800
Subject: [PATCH 14/17] use cake to build project
---
.gitignore | 6 +-
build/build.cake | 62 +++++
build/build.nuspec | 70 +++++
build/build.ps1 | 256 ++++++++++++++++++
.../HandyControl_Shared.projitems | 6 -
5 files changed, 393 insertions(+), 7 deletions(-)
create mode 100644 build/build.cake
create mode 100644 build/build.nuspec
create mode 100644 build/build.ps1
diff --git a/.gitignore b/.gitignore
index 0c602ad8..73a9dc99 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,4 +3,8 @@
*.xml
[Bb]in/
[Oo]bj/
-packages/
\ No newline at end of file
+packages/
+build/*
+!build/build.cake
+!build/build.nuspec
+!build/build.ps1
\ No newline at end of file
diff --git a/build/build.cake b/build/build.cake
new file mode 100644
index 00000000..7a5769ed
--- /dev/null
+++ b/build/build.cake
@@ -0,0 +1,62 @@
+var target = Argument("target", "Build");
+
+Task("Clean")
+ .Does(() =>
+{
+ CleanDirectory("lib");
+});
+
+Task("Build")
+ .IsDependentOn("Clean")
+ .Does(() =>
+{
+ var vsLatest = VSWhereLatest();
+ var msBuildPath = vsLatest?.CombineWithFilePath("./MSBuild/Current/Bin/MSBuild.exe");
+ NuGetRestore("../src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj");
+
+ var settingsNet40 = new MSBuildSettings
+ {
+ Configuration = "Release",
+ ToolPath = msBuildPath,
+ }.WithProperty("OutputPath", MakeAbsolute(Directory("lib/net40")).FullPath);
+
+ var settingsNet45 = new MSBuildSettings
+ {
+ Configuration = "Release-Net45",
+ ToolPath = msBuildPath,
+ }.WithProperty("OutputPath", MakeAbsolute(Directory("lib/net45")).FullPath);
+
+ var settingsNet462 = new MSBuildSettings
+ {
+ Configuration = "Release-Net462",
+ ToolPath = msBuildPath,
+ }.WithProperty("OutputPath", MakeAbsolute(Directory("lib/net462")).FullPath);
+
+ var settingsNet47 = new MSBuildSettings
+ {
+ Configuration = "Release-Net47",
+ ToolPath = msBuildPath,
+ }.WithProperty("OutputPath", MakeAbsolute(Directory("lib/net47")).FullPath);
+
+ var settingsNet48 = new MSBuildSettings
+ {
+ Configuration = "Release-Net48",
+ ToolPath = msBuildPath,
+ }.WithProperty("OutputPath", MakeAbsolute(Directory("lib/net48")).FullPath);
+
+ var settingsCore30 = new DotNetCoreBuildSettings
+ {
+ Framework = "netcoreapp3.0",
+ Configuration = "Release",
+ OutputDirectory = "lib/netcoreapp3.0"
+ };
+
+ MSBuild("../src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj", settingsNet40);
+ MSBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet45);
+ MSBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet462);
+ MSBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet47);
+ MSBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet48);
+ DotNetCoreBuild("../src/Core_30/HandyControl_Core_30/HandyControl_Core_30.csproj", settingsCore30);
+});
+
+RunTarget(target);
\ No newline at end of file
diff --git a/build/build.nuspec b/build/build.nuspec
new file mode 100644
index 00000000..d40e941a
--- /dev/null
+++ b/build/build.nuspec
@@ -0,0 +1,70 @@
+
+
+
+ HandyControl
+ 2.3.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ false
+ https://github.com/NaBian/HandyControl
+ https://raw.githubusercontent.com/HandyOrg/HandyOrgResource/master/HandyControl/Resources/icon.png
+ Contains some commonly used simple WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2019
+
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/build.ps1 b/build/build.ps1
new file mode 100644
index 00000000..23a48b73
--- /dev/null
+++ b/build/build.ps1
@@ -0,0 +1,256 @@
+##########################################################################
+# This is the Cake bootstrapper script for PowerShell.
+# This file was downloaded from https://github.com/cake-build/resources
+# Feel free to change this file to fit your needs.
+##########################################################################
+
+<#
+
+.SYNOPSIS
+This is a Powershell script to bootstrap a Cake build.
+
+.DESCRIPTION
+This Powershell script will download NuGet if missing, restore NuGet tools (including Cake)
+and execute your Cake build script with the parameters you provide.
+
+.PARAMETER Script
+The build script to execute.
+.PARAMETER Target
+The build script target to run.
+.PARAMETER Configuration
+The build configuration to use.
+.PARAMETER Verbosity
+Specifies the amount of information to be displayed.
+.PARAMETER ShowDescription
+Shows description about tasks.
+.PARAMETER DryRun
+Performs a dry run.
+.PARAMETER SkipToolPackageRestore
+Skips restoring of packages.
+.PARAMETER ScriptArgs
+Remaining arguments are added here.
+
+.LINK
+https://cakebuild.net
+
+#>
+
+[CmdletBinding()]
+Param(
+ [string]$Script = "build.cake",
+ [string]$Target,
+ [string]$Configuration,
+ [ValidateSet("Quiet", "Minimal", "Normal", "Verbose", "Diagnostic")]
+ [string]$Verbosity,
+ [switch]$ShowDescription,
+ [Alias("WhatIf", "Noop")]
+ [switch]$DryRun,
+ [switch]$SkipToolPackageRestore,
+ [Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
+ [string[]]$ScriptArgs
+)
+
+# Attempt to set highest encryption available for SecurityProtocol.
+# PowerShell will not set this by default (until maybe .NET 4.6.x). This
+# will typically produce a message for PowerShell v2 (just an info
+# message though)
+try {
+ # Set TLS 1.2 (3072), then TLS 1.1 (768), then TLS 1.0 (192), finally SSL 3.0 (48)
+ # Use integers because the enumeration values for TLS 1.2 and TLS 1.1 won't
+ # exist in .NET 4.0, even though they are addressable if .NET 4.5+ is
+ # installed (.NET 4.5 is an in-place upgrade).
+ # PowerShell Core already has support for TLS 1.2 so we can skip this if running in that.
+ if (-not $IsCoreCLR) {
+ [System.Net.ServicePointManager]::SecurityProtocol = 3072 -bor 768 -bor 192 -bor 48
+ }
+ } catch {
+ Write-Output 'Unable to set PowerShell to use TLS 1.2 and TLS 1.1 due to old .NET Framework installed. If you see underlying connection closed or trust errors, you may need to upgrade to .NET Framework 4.5+ and PowerShell v3'
+ }
+
+[Reflection.Assembly]::LoadWithPartialName("System.Security") | Out-Null
+function MD5HashFile([string] $filePath)
+{
+ if ([string]::IsNullOrEmpty($filePath) -or !(Test-Path $filePath -PathType Leaf))
+ {
+ return $null
+ }
+
+ [System.IO.Stream] $file = $null;
+ [System.Security.Cryptography.MD5] $md5 = $null;
+ try
+ {
+ $md5 = [System.Security.Cryptography.MD5]::Create()
+ $file = [System.IO.File]::OpenRead($filePath)
+ return [System.BitConverter]::ToString($md5.ComputeHash($file))
+ }
+ finally
+ {
+ if ($file -ne $null)
+ {
+ $file.Dispose()
+ }
+ }
+}
+
+function GetProxyEnabledWebClient
+{
+ $wc = New-Object System.Net.WebClient
+ $proxy = [System.Net.WebRequest]::GetSystemWebProxy()
+ $proxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials
+ $wc.Proxy = $proxy
+ return $wc
+}
+
+Write-Host "Preparing to run build script..."
+
+if(!$PSScriptRoot){
+ $PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
+}
+
+$TOOLS_DIR = Join-Path $PSScriptRoot "tools"
+$ADDINS_DIR = Join-Path $TOOLS_DIR "Addins"
+$MODULES_DIR = Join-Path $TOOLS_DIR "Modules"
+$NUGET_EXE = Join-Path $TOOLS_DIR "nuget.exe"
+$CAKE_EXE = Join-Path $TOOLS_DIR "Cake/Cake.exe"
+$NUGET_URL = "https://github.com/HandyOrg/HandyOrgResource/blob/master/Tools/nuget.exe?raw=true"
+$PACKAGES_CONFIG = Join-Path $TOOLS_DIR "packages.config"
+$PACKAGES_CONFIG_MD5 = Join-Path $TOOLS_DIR "packages.config.md5sum"
+$ADDINS_PACKAGES_CONFIG = Join-Path $ADDINS_DIR "packages.config"
+$MODULES_PACKAGES_CONFIG = Join-Path $MODULES_DIR "packages.config"
+
+# Make sure tools folder exists
+if ((Test-Path $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) {
+ Write-Verbose -Message "Creating tools directory..."
+ New-Item -Path $TOOLS_DIR -Type Directory | Out-Null
+}
+
+# Make sure that packages.config exist.
+if (!(Test-Path $PACKAGES_CONFIG)) {
+ Write-Verbose -Message "Downloading packages.config..."
+ try {
+ $wc = GetProxyEnabledWebClient
+ $wc.DownloadFile("https://cakebuild.net/download/bootstrapper/packages", $PACKAGES_CONFIG)
+ } catch {
+ Throw "Could not download packages.config."
+ }
+}
+
+# Try find NuGet.exe in path if not exists
+if (!(Test-Path $NUGET_EXE)) {
+ Write-Verbose -Message "Trying to find nuget.exe in PATH..."
+ $existingPaths = $Env:Path -Split ';' | Where-Object { (![string]::IsNullOrEmpty($_)) -and (Test-Path $_ -PathType Container) }
+ $NUGET_EXE_IN_PATH = Get-ChildItem -Path $existingPaths -Filter "nuget.exe" | Select -First 1
+ if ($NUGET_EXE_IN_PATH -ne $null -and (Test-Path $NUGET_EXE_IN_PATH.FullName)) {
+ Write-Verbose -Message "Found in PATH at $($NUGET_EXE_IN_PATH.FullName)."
+ $NUGET_EXE = $NUGET_EXE_IN_PATH.FullName
+ }
+}
+
+# Try download NuGet.exe if not exists
+if (!(Test-Path $NUGET_EXE)) {
+ Write-Verbose -Message "Downloading NuGet.exe..."
+ try {
+ $wc = GetProxyEnabledWebClient
+ $wc.DownloadFile($NUGET_URL, $NUGET_EXE)
+ } catch {
+ Throw "Could not download NuGet.exe."
+ }
+}
+
+# Save nuget.exe path to environment to be available to child processed
+$env:NUGET_EXE = $NUGET_EXE
+$env:NUGET_EXE_INVOCATION = if ($IsLinux -or $IsMacOS) {
+ "mono `"$NUGET_EXE`""
+} else {
+ "`"$NUGET_EXE`""
+}
+
+# Restore tools from NuGet?
+if(-Not $SkipToolPackageRestore.IsPresent) {
+ Push-Location
+ Set-Location $TOOLS_DIR
+
+ # Check for changes in packages.config and remove installed tools if true.
+ [string] $md5Hash = MD5HashFile $PACKAGES_CONFIG
+ if((!(Test-Path $PACKAGES_CONFIG_MD5)) -Or
+ ($md5Hash -ne (Get-Content $PACKAGES_CONFIG_MD5 ))) {
+ Write-Verbose -Message "Missing or changed package.config hash..."
+ Get-ChildItem -Exclude packages.config,nuget.exe,Cake.Bakery |
+ Remove-Item -Recurse -Force
+ }
+
+ Write-Verbose -Message "Restoring tools from NuGet..."
+
+ $NuGetOutput = Invoke-Expression "& $env:NUGET_EXE_INVOCATION install -ExcludeVersion -OutputDirectory `"$TOOLS_DIR`""
+
+ if ($LASTEXITCODE -ne 0) {
+ Throw "An error occurred while restoring NuGet tools."
+ }
+ else
+ {
+ $md5Hash | Out-File $PACKAGES_CONFIG_MD5 -Encoding "ASCII"
+ }
+ Write-Verbose -Message ($NuGetOutput | Out-String)
+
+ Pop-Location
+}
+
+# Restore addins from NuGet
+if (Test-Path $ADDINS_PACKAGES_CONFIG) {
+ Push-Location
+ Set-Location $ADDINS_DIR
+
+ Write-Verbose -Message "Restoring addins from NuGet..."
+ $NuGetOutput = Invoke-Expression "& $env:NUGET_EXE_INVOCATION install -ExcludeVersion -OutputDirectory `"$ADDINS_DIR`""
+
+ if ($LASTEXITCODE -ne 0) {
+ Throw "An error occurred while restoring NuGet addins."
+ }
+
+ Write-Verbose -Message ($NuGetOutput | Out-String)
+
+ Pop-Location
+}
+
+# Restore modules from NuGet
+if (Test-Path $MODULES_PACKAGES_CONFIG) {
+ Push-Location
+ Set-Location $MODULES_DIR
+
+ Write-Verbose -Message "Restoring modules from NuGet..."
+ $NuGetOutput = Invoke-Expression "& $env:NUGET_EXE_INVOCATION install -ExcludeVersion -OutputDirectory `"$MODULES_DIR`""
+
+ if ($LASTEXITCODE -ne 0) {
+ Throw "An error occurred while restoring NuGet modules."
+ }
+
+ Write-Verbose -Message ($NuGetOutput | Out-String)
+
+ Pop-Location
+}
+
+# Make sure that Cake has been installed.
+if (!(Test-Path $CAKE_EXE)) {
+ Throw "Could not find Cake.exe at $CAKE_EXE"
+}
+
+$CAKE_EXE_INVOCATION = if ($IsLinux -or $IsMacOS) {
+ "mono `"$CAKE_EXE`""
+} else {
+ "`"$CAKE_EXE`""
+}
+
+ # Build an array (not a string) of Cake arguments to be joined later
+$cakeArguments = @()
+if ($Script) { $cakeArguments += "`"$Script`"" }
+if ($Target) { $cakeArguments += "-target=`"$Target`"" }
+if ($Configuration) { $cakeArguments += "-configuration=$Configuration" }
+if ($Verbosity) { $cakeArguments += "-verbosity=$Verbosity" }
+if ($ShowDescription) { $cakeArguments += "-showdescription" }
+if ($DryRun) { $cakeArguments += "-dryrun" }
+$cakeArguments += $ScriptArgs
+
+# Start Cake
+Write-Host "Running build script..."
+Invoke-Expression "& $CAKE_EXE_INVOCATION $($cakeArguments -join " ")"
+exit $LASTEXITCODE
diff --git a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
index bb56f6d3..32a40820 100644
--- a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
+++ b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
@@ -909,10 +909,4 @@
-
-
- Designer
- MSBuild:Compile
-
-
\ No newline at end of file
From 3e98a60246a2e9cab88f945cb8e38b72839342bf Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Sun, 1 Dec 2019 19:32:40 +0800
Subject: [PATCH 15/17] Update README.md
---
README.md | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/README.md b/README.md
index 79b7a3f1..c2ae3353 100644
--- a/README.md
+++ b/README.md
@@ -49,7 +49,11 @@
## Special thanks to
+[](https://visualstudio.microsoft.com/free-developer-offers/)
[](https://www.jetbrains.com/?from=HandyControl)
+[](https://cakebuild.net/)
+[](https://www.appveyor.com/)
+[](https://gitter.im/)
## Usage
From 309f4a72e6a641a57e49b6981db89db260cc2111 Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Sun, 1 Dec 2019 21:12:51 +0800
Subject: [PATCH 16/17] fixed a bug of NotifyIcon
---
.../Controls/Other/NotifyIcon.cs | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs b/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs
index ca4ad40b..988b72c4 100644
--- a/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs
+++ b/src/Shared/HandyControl_Shared/Controls/Other/NotifyIcon.cs
@@ -636,6 +636,22 @@ namespace HandyControl.Controls
}
else if (ContextMenu != null)
{
+ if (ContextMenu.Items.Count == 0) return;
+
+ ContextMenu.InvalidateProperty(StyleProperty);
+ foreach (var item in ContextMenu.Items)
+ {
+ if (item is MenuItem menuItem)
+ {
+ menuItem.InvalidateProperty(StyleProperty);
+ }
+ else
+ {
+ var container = ContextMenu.ItemContainerGenerator.ContainerFromItem(item) as MenuItem;
+ container?.InvalidateProperty(StyleProperty);
+ }
+ }
+
ContextMenu.Placement = PlacementMode.Mouse;
ContextMenu.IsOpen = true;
From 5099bfe39356801505f97a3d498a4ceaf5b256ca Mon Sep 17 00:00:00 2001
From: NaBian <836904362@qq.com>
Date: Sun, 1 Dec 2019 21:48:38 +0800
Subject: [PATCH 17/17] update vsix to v2.3.0
---
.../VS2019/HandyControl_VS2019/source.extension.vsixmanifest | 2 +-
Installers/VS2019/WpfApp/ProjectTemplate.csproj | 4 ++--
Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs | 4 ++--
Installers/VS2019/WpfApp/packages.config | 2 +-
Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj | 2 +-
Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs | 4 ++--
6 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest b/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
index 2b7872fa..6824b141 100644
--- a/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
+++ b/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
@@ -1,7 +1,7 @@
-
+
HandyControl for VS2019
This VSIX Project will help people initialize a HandyControl project.
https://handyorg.github.io/handycontrol
diff --git a/Installers/VS2019/WpfApp/ProjectTemplate.csproj b/Installers/VS2019/WpfApp/ProjectTemplate.csproj
index 36c31f3e..d8a830db 100644
--- a/Installers/VS2019/WpfApp/ProjectTemplate.csproj
+++ b/Installers/VS2019/WpfApp/ProjectTemplate.csproj
@@ -34,8 +34,8 @@
4
-
- ..\packages\HandyControl.2.2.0\lib\net47\HandyControl.dll
+
+ ..\packages\HandyControl.2.3.0\lib\net47\HandyControl.dll
diff --git a/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs b/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
index 48d57882..b45d8c50 100644
--- a/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
+++ b/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
@@ -10,5 +10,5 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("2.2.0")]
-[assembly: AssemblyFileVersion("2.2.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("2.3.0")]
+[assembly: AssemblyFileVersion("2.3.0")]
\ No newline at end of file
diff --git a/Installers/VS2019/WpfApp/packages.config b/Installers/VS2019/WpfApp/packages.config
index 49835227..4889bb7d 100644
--- a/Installers/VS2019/WpfApp/packages.config
+++ b/Installers/VS2019/WpfApp/packages.config
@@ -1,4 +1,4 @@
-
+
\ No newline at end of file
diff --git a/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj b/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
index 7be21c89..c453863b 100644
--- a/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
+++ b/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
@@ -19,6 +19,6 @@
TRACE;Core
-
+
\ No newline at end of file
diff --git a/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs b/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
index 2c7b05f5..afd74fb0 100644
--- a/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
+++ b/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
@@ -10,5 +10,5 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("2.2.0")]
-[assembly: AssemblyFileVersion("2.2.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("2.3.0")]
+[assembly: AssemblyFileVersion("2.3.0")]
\ No newline at end of file