diff --git a/README.md b/README.md
index aeeee73f..54ad73f9 100644
--- a/README.md
+++ b/README.md
@@ -63,6 +63,10 @@ Step 4:enjoy coding
## Latest examples
+### HoneycombPanel
+
+
+
### RunningBlock

@@ -81,12 +85,12 @@ Step 4:enjoy coding

+## History publication
+
### ButtonGroup

-## History publication
-
### Grid

diff --git a/Resources/HoneycombPanel.png b/Resources/HoneycombPanel.png
new file mode 100644
index 00000000..b1fb329a
Binary files /dev/null and b/Resources/HoneycombPanel.png differ
diff --git a/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj b/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj
index b5293883..0f5b3822 100644
--- a/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj
+++ b/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj
@@ -396,6 +396,9 @@
Resources\Img\LeftMainContent\Dynamic_16x.png
+
+ Resources\Img\LeftMainContent\PolygonHexagon_16x.png
+
Resources\Img\Dance.png
diff --git a/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj b/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
index 0b10fbd3..0af990f9 100644
--- a/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
+++ b/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
@@ -417,6 +417,9 @@
TextTemplatingFileGenerator
MessageToken.cs
+
+ Resources\Img\LeftMainContent\PolygonHexagon_16x.png
+
Resources\Img\LeftMainContent\Dynamic_16x.png
diff --git a/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj b/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj
index 251e2bd5..2987971d 100644
--- a/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj
+++ b/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj
@@ -480,6 +480,9 @@
TextTemplatingFileGenerator
MessageToken.cs
+
+ Resources\Img\LeftMainContent\PolygonHexagon_16x.png
+
Resources\Img\LeftMainContent\Dynamic_16x.png
diff --git a/src/Shared/HandyControlDemo_Shared/App.xaml.cs b/src/Shared/HandyControlDemo_Shared/App.xaml.cs
index c2f58f68..1392706a 100644
--- a/src/Shared/HandyControlDemo_Shared/App.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/App.xaml.cs
@@ -9,9 +9,6 @@ using HandyControlDemo.Tools;
namespace HandyControlDemo
{
- ///
- /// App.xaml 的交互逻辑
- ///
public partial class App
{
protected override void OnStartup(StartupEventArgs e)
diff --git a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs
index ff297a66..1fdfbf4a 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs
@@ -108,6 +108,8 @@
public static readonly string RunningBlockDemoCtl = nameof(RunningBlockDemoCtl);
+ public static readonly string HoneycombPanelDemoCtl = nameof(HoneycombPanelDemoCtl);
+
public static readonly string ButtonDemoCtl = nameof(ButtonDemoCtl);
public static readonly string RepeatButtonDemoCtl = nameof(RepeatButtonDemoCtl);
diff --git a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt
index 20805e83..efb23e47 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt
+++ b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt
@@ -56,7 +56,8 @@ var controlList = new List
"CardDemoCtl",
"MagnifierDemoCtl",
"ImageBlockDemoCtl",
- "RunningBlockDemoCtl"
+ "RunningBlockDemoCtl",
+ "HoneycombPanelDemoCtl"
};
var styleList = new List
{
diff --git a/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems b/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
index 65f17be3..3b28efa9 100644
--- a/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
+++ b/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
@@ -54,6 +54,9 @@
CardDemoCtl.xaml
+
+ HoneycombPanelDemoCtl.xaml
+
ImageBlockDemoCtl.xaml
@@ -429,6 +432,10 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
index c5abda38..910885a1 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
@@ -69,6 +69,15 @@ namespace HandyControlDemo.Properties.Langs {
}
}
+ ///
+ /// 查找类似 添加项 的本地化字符串。
+ ///
+ public static string AddItem {
+ get {
+ return ResourceManager.GetString("AddItem", resourceCulture);
+ }
+ }
+
///
/// 查找类似 动画路径 的本地化字符串。
///
@@ -672,6 +681,15 @@ namespace HandyControlDemo.Properties.Langs {
}
}
+ ///
+ /// 查找类似 蜂窝布局 的本地化字符串。
+ ///
+ public static string HoneycombPanel {
+ get {
+ return ResourceManager.GetString("HoneycombPanel", resourceCulture);
+ }
+ }
+
///
/// 查找类似 混合布局 的本地化字符串。
///
@@ -1185,6 +1203,15 @@ namespace HandyControlDemo.Properties.Langs {
}
}
+ ///
+ /// 查找类似 删除项 的本地化字符串。
+ ///
+ public static string RemoveItem {
+ get {
+ return ResourceManager.GetString("RemoveItem", resourceCulture);
+ }
+ }
+
///
/// 查找类似 重复按钮 的本地化字符串。
///
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
index 8156f572..92647771 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
@@ -636,4 +636,13 @@
RunningBlock
+
+ HoneycombPanel
+
+
+ Add an item
+
+
+ Remove an item
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
index 6515453f..c034998d 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
@@ -636,4 +636,13 @@
滚动块
+
+ 蜂窝布局
+
+
+ 添加项
+
+
+ 删除项
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PolygonHexagon_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PolygonHexagon_16x.png
new file mode 100644
index 00000000..0aae4fee
Binary files /dev/null and b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PolygonHexagon_16x.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs b/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs
index cd558e1d..0ea49299 100644
--- a/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs
+++ b/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs
@@ -157,9 +157,9 @@ namespace HandyControlDemo.Service
};
}
- internal List GetCardDataList()
+ internal ObservableCollection GetCardDataList()
{
- return new List
+ return new ObservableCollection
{
new CardModel
{
@@ -224,6 +224,14 @@ namespace HandyControlDemo.Service
};
}
+ internal CardModel GetCardData()
+ {
+ return new CardModel
+ {
+ Content = $"/HandyControlDemo;component/Resources/Img/Album/{DateTime.Now.Second % 10 + 1}.jpg"
+ };
+ }
+
internal List GetStepBarDemoDataList()
{
return new List
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/GrowlDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/GrowlDemoCtl.xaml.cs
index cbf99957..c3474865 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/GrowlDemoCtl.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/GrowlDemoCtl.xaml.cs
@@ -1,9 +1,6 @@
namespace HandyControlDemo.UserControl
{
- ///
- /// GrowlDemoGrid.xaml 的交互逻辑
- ///
public partial class GrowlDemoCtl
{
public GrowlDemoCtl()
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/HoneycombPanelDemoCtl.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/HoneycombPanelDemoCtl.xaml
new file mode 100644
index 00000000..9d1f7c91
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/HoneycombPanelDemoCtl.xaml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/HoneycombPanelDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/HoneycombPanelDemoCtl.xaml.cs
new file mode 100644
index 00000000..13c4d23e
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/HoneycombPanelDemoCtl.xaml.cs
@@ -0,0 +1,10 @@
+namespace HandyControlDemo.UserControl
+{
+ public partial class HoneycombPanelDemoCtl
+ {
+ public HoneycombPanelDemoCtl()
+ {
+ InitializeComponent();
+ }
+ }
+}
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/ImageBrowserDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/ImageBrowserDemoCtl.xaml.cs
index d40e1b88..da51a2c1 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/ImageBrowserDemoCtl.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/ImageBrowserDemoCtl.xaml.cs
@@ -1,9 +1,6 @@
namespace HandyControlDemo.UserControl
{
- ///
- /// ImageBrowserDemoCtl.xaml 的交互逻辑
- ///
public partial class ImageBrowserDemoCtl
{
public ImageBrowserDemoCtl()
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/StepBarDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/StepBarDemoCtl.xaml.cs
index cadb827f..991bab9b 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Controls/StepBarDemoCtl.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Controls/StepBarDemoCtl.xaml.cs
@@ -1,9 +1,6 @@
namespace HandyControlDemo.UserControl
{
- ///
- /// StepBarDemoCtl.xaml 的交互逻辑
- ///
public partial class StepBarDemoCtl
{
public StepBarDemoCtl()
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Main/LeftMainContent.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Main/LeftMainContent.xaml
index 68a0e2a9..b94ff6ec 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Main/LeftMainContent.xaml
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Main/LeftMainContent.xaml
@@ -220,7 +220,7 @@
-
+
@@ -350,6 +350,11 @@
+
+
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ExpanderDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ExpanderDemoCtl.xaml.cs
index 31cb303c..6987f5c9 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ExpanderDemoCtl.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ExpanderDemoCtl.xaml.cs
@@ -2,9 +2,6 @@
namespace HandyControlDemo.UserControl
{
- ///
- /// ExpanderDemoCtl.xaml 的交互逻辑
- ///
public partial class ExpanderDemoCtl
{
public ExpanderDemoCtl()
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/TextBlockDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/TextBlockDemoCtl.xaml.cs
index fc1ac558..faea8b77 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/TextBlockDemoCtl.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/TextBlockDemoCtl.xaml.cs
@@ -1,9 +1,6 @@
namespace HandyControlDemo.UserControl
{
- ///
- /// TextBlockDemoCtl.xaml 的交互逻辑
- ///
public partial class TextBlockDemoCtl
{
public TextBlockDemoCtl()
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml.cs
index f4889ca3..9f5240df 100644
--- a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/ToggleButtonDemoCtl.xaml.cs
@@ -1,9 +1,6 @@
namespace HandyControlDemo.UserControl
{
- ///
- /// ToggleButtonDemoCtl.xaml 的交互逻辑
- ///
public partial class ToggleButtonDemoCtl
{
public ToggleButtonDemoCtl()
diff --git a/src/Shared/HandyControlDemo_Shared/ViewModel/Controls/CardDemoViewModel.cs b/src/Shared/HandyControlDemo_Shared/ViewModel/Controls/CardDemoViewModel.cs
index 10ddfb36..671d2c52 100644
--- a/src/Shared/HandyControlDemo_Shared/ViewModel/Controls/CardDemoViewModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/ViewModel/Controls/CardDemoViewModel.cs
@@ -1,13 +1,34 @@
-using HandyControlDemo.Data;
+using System;
+#if netle40
+using GalaSoft.MvvmLight.Command;
+#else
+using GalaSoft.MvvmLight.CommandWpf;
+#endif
+using HandyControlDemo.Data;
using HandyControlDemo.Service;
namespace HandyControlDemo.ViewModel
{
public class CardDemoViewModel : DemoViewModelBase
{
+ private readonly DataService _dataService;
+
public CardDemoViewModel(DataService dataService)
{
+ _dataService = dataService;
DataList = dataService.GetCardDataList();
}
+
+ public RelayCommand AddItemCmd => new Lazy(() =>
+ new RelayCommand(() => DataList.Insert(0, _dataService.GetCardData()))).Value;
+
+ public RelayCommand RemoveItemCmd => new Lazy(() =>
+ new RelayCommand(() =>
+ {
+ if (DataList.Count > 0)
+ {
+ DataList.RemoveAt(0);
+ }
+ })).Value;
}
}
diff --git a/src/Shared/HandyControlDemo_Shared/ViewModel/Main/MainViewModel.cs b/src/Shared/HandyControlDemo_Shared/ViewModel/Main/MainViewModel.cs
index 5b3c1691..939d32e2 100644
--- a/src/Shared/HandyControlDemo_Shared/ViewModel/Main/MainViewModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/ViewModel/Main/MainViewModel.cs
@@ -16,7 +16,7 @@ namespace HandyControlDemo.ViewModel
{
public class MainViewModel : DemoViewModelBase
{
-#region 字段
+ #region 字段
///
/// 内容标题
@@ -33,7 +33,7 @@ namespace HandyControlDemo.ViewModel
///
private ListBoxItem _listBoxItemCurrent;
-#endregion
+ #endregion
public MainViewModel(DataService dataService)
{
@@ -54,7 +54,7 @@ namespace HandyControlDemo.ViewModel
DataList = dataService.GetDemoDataList();
}
-#region 属性
+ #region 属性
///
/// 子内容
@@ -84,7 +84,7 @@ namespace HandyControlDemo.ViewModel
#endregion
-#region 命令
+ #region 命令
///
/// 切换例子命令
diff --git a/src/Shared/HandyControlDemo_Shared/ViewModel/ViewModelLocator.cs b/src/Shared/HandyControlDemo_Shared/ViewModel/ViewModelLocator.cs
index 9c5b6759..94eeca7a 100644
--- a/src/Shared/HandyControlDemo_Shared/ViewModel/ViewModelLocator.cs
+++ b/src/Shared/HandyControlDemo_Shared/ViewModel/ViewModelLocator.cs
@@ -88,7 +88,7 @@ namespace HandyControlDemo.ViewModel
public NoUserViewModel NoUser => ServiceLocator.Current.GetInstance();
- public CardDemoViewModel CardDemo => ServiceLocator.Current.GetInstance();
+ public CardDemoViewModel CardDemo => new CardDemoViewModel(ServiceLocator.Current.GetInstance());
#endregion
}
diff --git a/src/Shared/HandyControl_Shared/Controls/Panel/HoneycombPanel.cs b/src/Shared/HandyControl_Shared/Controls/Panel/HoneycombPanel.cs
new file mode 100644
index 00000000..91982f7d
--- /dev/null
+++ b/src/Shared/HandyControl_Shared/Controls/Panel/HoneycombPanel.cs
@@ -0,0 +1,166 @@
+using System;
+using System.Windows;
+using System.Windows.Controls;
+
+namespace HandyControl.Controls
+{
+ public class HoneycombPanel : Panel
+ {
+ private double _unitLength;
+
+ private HoneycombStuffer _stuffer;
+
+ private static int GetXCount(int count)
+ {
+ if (count == 0) return 0;
+
+ count -= 1;
+
+ var index = (int) Math.Floor(Math.Pow((12.0 * count + 25) / 36, 0.5) - 5.0 / 6);
+ var valeIndex = 3 * index * index + 5 * index;
+ var centerValue = valeIndex + 2;
+
+ return count >= centerValue
+ ? 4 * index + 6
+ : count > valeIndex
+ ? 4 * index + 4
+ : 4 * index + 2;
+ }
+
+ private static int GetYCount(int count)
+ {
+ if (count == 0) return 0;
+
+ count -= 1;
+
+ var index = (int)Math.Floor(Math.Pow(count / 3.0 + 0.25, 0.5) - 0.5);
+ var valeIndex = 3 * index * index + 3 * index;
+
+ return count > valeIndex
+ ? 2 * index + 2
+ : 2 * index;
+ }
+
+ /*
+ * layout order
+ *
+ * ● ●
+ * (7) (8)
+ *
+ * ● ● ●
+ * (6) (1) (9)
+ *
+ * ● ● ● ...
+ * (5) (0) (2)
+ *
+ * ● ● ...
+ * (4) (3)
+ *
+ */
+ protected override Size MeasureOverride(Size availableSize)
+ {
+ var maxSize = new Size();
+
+ foreach (UIElement child in InternalChildren)
+ {
+ if (child != null)
+ {
+ child.Measure(availableSize);
+ maxSize.Width = Math.Max(maxSize.Width, child.DesiredSize.Width);
+ maxSize.Height = Math.Max(maxSize.Height, child.DesiredSize.Height);
+ }
+ }
+
+ _unitLength = Math.Max(maxSize.Width, maxSize.Height) / 2;
+
+ var xCount = GetXCount(InternalChildren.Count);
+ var yCount = GetYCount(InternalChildren.Count);
+
+ var availableWidth = xCount * _unitLength;
+ var availableHeight = yCount * Math.Pow(3, 0.5) * _unitLength + _unitLength * 2;
+
+ return new Size(availableWidth, availableHeight);
+ }
+
+ protected override Size ArrangeOverride(Size finalSize)
+ {
+ var childLength = _unitLength * 2;
+ _stuffer = new HoneycombStuffer(new Rect(finalSize.Width / 2 - _unitLength,
+ finalSize.Height / 2 - _unitLength, childLength, childLength));
+
+ foreach (UIElement child in InternalChildren)
+ {
+ child.Arrange(_stuffer.Move());
+ }
+
+ return base.ArrangeOverride(finalSize);
+ }
+
+ private class HoneycombStuffer
+ {
+ private int _turns;
+
+ private int _maxIndex;
+
+ private int _currentIndex = -1;
+
+ private readonly double _offsetX;
+
+ private readonly double _offsetY;
+
+ private Rect _childBounds;
+
+ private readonly double[] _offsetXArr;
+
+ private readonly double[] _offsetYArr;
+
+ public HoneycombStuffer(Rect childBounds)
+ {
+ _childBounds = childBounds;
+ _offsetX = childBounds.Width / 2;
+ _offsetY = Math.Pow(3, 0.5) * _offsetX;
+
+ _offsetXArr = new[]
+ {
+ 2 * _offsetX,
+ _offsetX,
+ -_offsetX,
+ -2 * _offsetX,
+ -_offsetX,
+ _offsetX
+ };
+
+ _offsetYArr = new[]
+ {
+ 0,
+ _offsetY,
+ _offsetY,
+ 0,
+ -_offsetY,
+ -_offsetY
+ };
+ }
+
+ public Rect Move()
+ {
+ _currentIndex++;
+ if (_currentIndex > _maxIndex)
+ {
+ _turns++;
+ _maxIndex = _turns * 6 - 1;
+ _currentIndex = 0;
+ _childBounds.Offset(_offsetX, -_offsetY);
+ return _childBounds;
+ }
+
+ if (_turns > 0)
+ {
+ var index = _currentIndex / _turns;
+ _childBounds.Offset(_offsetXArr[index], _offsetYArr[index]);
+ }
+
+ return _childBounds;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
index c83ace32..a974057f 100644
--- a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
+++ b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
@@ -25,6 +25,7 @@
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml
index 8a47202a..5bafc2a9 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml
@@ -4,10 +4,12 @@
+