progress)
- {
- // When initialized asynchronously, the current thread may be a background thread at this point.
- // Do any initialization that requires the UI thread after switching to the UI thread.
- await this.JoinableTaskFactory.SwitchToMainThreadAsync(cancellationToken);
- }
-
- #endregion
- }
-}
diff --git a/Installers/VS2019/WpfApp/WpfApp.vstemplate b/Installers/VS2019/WpfApp/WpfApp.vstemplate
deleted file mode 100644
index 69f0d286..00000000
--- a/Installers/VS2019/WpfApp/WpfApp.vstemplate
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
- HandyControl WPF App(.NET Framework)
- Creates a HandyControl WPF App(.NET Framework)
- icon.ico
- CSharp
- 4.7
- 4.7.2
- 38e0a2df-5858-4bde-b373-7c50bc982906
- true
- HandyControlProject
- true
- csharp
- windows
- desktop
- HandyControl
-
-
-
- AssemblyInfo.cs
- App.xaml
- App.xaml.cs
- MainWindow.xaml
- MainWindow.xaml.cs
- packages.config
-
-
-
\ No newline at end of file
diff --git a/Installers/VS2019/WpfApp/packages.config b/Installers/VS2019/WpfApp/packages.config
deleted file mode 100644
index 9e25ff12..00000000
--- a/Installers/VS2019/WpfApp/packages.config
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj b/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
deleted file mode 100644
index 9b17e7cd..00000000
--- a/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
- WinExe
- netcoreapp3.0
- true
- $safeprojectname$
- $safeprojectname$
- 1.0.0.0
- Debug;Release
- Copyright © $username$ 2018-2020
- 1.0.0.0
- 1.0.0.0
- latest
-
-
- TRACE;Core
-
-
- TRACE;Core
-
-
-
-
-
\ No newline at end of file
diff --git a/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs b/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
deleted file mode 100644
index 6ca08ca9..00000000
--- a/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-[assembly: AssemblyTitle("HandyControl_VS2019_WpfCoreApp")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("HandyControl_VS2019_WpfCoreApp")]
-[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2020")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("2.5.0")]
-[assembly: AssemblyFileVersion("2.5.0")]
diff --git a/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate b/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate
deleted file mode 100644
index 532eaeaf..00000000
--- a/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
- HandyControl WPF App(.NET Core)
- Creates a HandyControl WPF App(.NET Core)
- icon.ico
- CSharp
- true
- HandyControlProject
- true
- csharp
- windows
- desktop
- HandyControl
- Enabled
- true
- true
-
-
-
- App.xaml
- App.xaml.cs
- MainWindow.xaml
- MainWindow.xaml.cs
-
-
-
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
index 3d3d568c..0f3d16f7 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2018-2020 HandyOrg
+Copyright (c) 2018-2023 HandyOrg
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/README-cn.md b/README-cn.md
index 599dca92..ed14e220 100644
--- a/README-cn.md
+++ b/README-cn.md
@@ -1,19 +1,48 @@
-[中文](https://gitee.com/handyorg/HandyControl/blob/master/README-cn.md) - [English](https://github.com/HandyOrg/HandyControl/blob/master/README.md)
+## 友情链接
-
+[SimpleFactoryGenerator](https://github.com/DingpingZhang/SimpleFactoryGenerator) - A simple factory source generator that enables the pattern to not violate the open-close principle.
-   [](https://www.nuget.org/packages/HandyControl)  [](https://gitter.im/HandyControl/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [](https://github.com/ghost1372/HandyControl/wiki) [](https://www.nuget.org/packages/HandyControl)
+[WpfExtensions](https://github.com/DingpingZhang/WpfExtensions) - Some syntactic sugar for Wpf development.
-# Welcome to HandyControl
+
+
+
+
+
+ 中文
+ ❤
+ English
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## 特别声明
+
+HandyControl 项目已加入 [dotNET China](https://gitee.com/dotnetchina) 组织。
+
+
## 面向中国
-### 加入讨论
+### 技术交流
-| | 西江月群 | 定风波群 | 广寒秋群 |
-|-|:-:|:-:|:-:|
-| 群号码 | [](//shang.qq.com/wpa/qunwpa?idkey=a571e5553c9d41e49c4f22f3a8b2865451497a795ff281fedf3285def247efc1) | [](//shang.qq.com/wpa/qunwpa?idkey=5c18622a0f6ee07a6f33afa8cdb85b1f72ea50e878271dfcec919c76b55afee7) | 微信群 |
-| 二维码 |  |  |  |
+[https://join.slack.com/t/handycontrol/shared_invite/zt-sw29prqd-okFmRlmETdtWhnF7C3foxA](https://join.slack.com/t/handycontrol/shared_invite/zt-sw29prqd-okFmRlmETdtWhnF7C3foxA)
### 码云
@@ -24,80 +53,114 @@
[https://handyorg.github.io/handycontrol/](https://handyorg.github.io/handycontrol/)
### 赞助
-如果您觉得HandyControl还不错,并且刚好有些闲钱,那么可以选择以下两种方式来赞助(记得入群联系我们呀~~):
-* [以HandyControl的名义为慈善事业做贡献](http://www.chinacharityfederation.org/ConfirmDonation/0.html?zhijie=3)
+* [以HandyControl的名义为慈善事业做贡献(请联系我们上赞助墙)](http://www.chinacharityfederation.org/ConfirmDonation/0.html?zhijie=3)
-* 为我们购买防脱洗发水
+* 为我们购买防脱洗发水 (支付宝扫码)

-## Contributors
+## 贡献者
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-## Backers
+## 赞助者
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-## Special thanks to
+## 鸣谢
[](https://visualstudio.microsoft.com/free-developer-offers/)
[](https://www.jetbrains.com/?from=HandyControl)
[](https://cakebuild.net/)
-[](https://gitter.im/)
-## Usage
+## 使用HandyControl的项目
-Step 1: Add a reference to HandyControl or search for HandyControl on the nuget;
+
+
+
+
+如果你的项目没有被列出,请告知我们! 😀
+
+## 用法
+
+Step 1: 添加 HandyControl 引用,或在 nuget 上搜索 HandyControl;
```Install-Package HandyControl```
-Step 2: Add code in App.xaml as follows:
+Step 2: 在 App.xaml 中添加如下代码:
```XML
@@ -109,27 +172,39 @@ Step 2: Add code in App.xaml as follows:
```
-Step 3: Add NameSpace:
+Step 3: 添加命名空间:
`xmlns:hc="https://handyorg.github.io/handycontrol"`
-Step 4: Enjoy coding
+Step 4: 开始编码
-## VSIX packages for Visual Studio
+## VS插件
-| [VS2019](https://marketplace.visualstudio.com/items?itemName=HandyOrg.handycontrolforvs2019) |
+| [VS2019](https://marketplace.visualstudio.com/items?itemName=HandyOrg.HandyControl) |
| ------------- |
-## Stargazers over time
+## Star趋势
[](https://starchart.cc/HandyOrg/HandyControl)
-## Overview
+## 概览


-## Latest examples
+## 最新示例
+
+### Watermark
+
+
+
+### AutoCompleteTextBox
+
+
+
+### ElementGroup
+
+
### UniformSpacingPanel
@@ -139,6 +214,8 @@ Step 4: Enjoy coding

+## 历史发布
+
### CheckComboBox

@@ -151,8 +228,6 @@ Step 4: Enjoy coding

-## History publication
-
### Screenshot

@@ -199,7 +274,7 @@ Step 4: Enjoy coding
### SplitButton
-
+
### FloatingBlock
@@ -215,7 +290,7 @@ Step 4: Enjoy coding
### ImageBlock
-
+

@@ -253,7 +328,7 @@ Step 4: Enjoy coding
### Badge
-
+
### Gravatar
@@ -273,11 +348,11 @@ Step 4: Enjoy coding
### Transfer
-
+
### ProgressButton
-
+
### CoverFlow
@@ -297,11 +372,11 @@ Step 4: Enjoy coding
### Rate
-
+
### BlurWindow
-
+
### FlipClock
@@ -333,7 +408,7 @@ Step 4: Enjoy coding
### CircleProgressBar
-
+
### ButtonStyle
@@ -435,7 +510,7 @@ Step 4: Enjoy coding
### StepBar
-
+
### GifImage
@@ -447,11 +522,11 @@ Step 4: Enjoy coding
### Calendar
-
+
### Clock
-
+
### CalendarWithClock
@@ -459,7 +534,7 @@ Step 4: Enjoy coding
### TextBlock
-
+
### RichTextBoxStyle
@@ -467,11 +542,11 @@ Step 4: Enjoy coding
### TextBox
-
+
### ComboBox
-
+
### NumericUpDown
@@ -483,27 +558,27 @@ Step 4: Enjoy coding
### PasswordBox
-
+
-### DataPicker
+### DatePicker
-
+
### TimePicker
-
+
### DateTimePicker
-
+
### ScrollViewer
-
+
### CirclePanel
-
+
### TransitioningContentControl
@@ -516,7 +591,3 @@ Step 4: Enjoy coding
### Brush

-
-## Switching configuration
-
-
diff --git a/README.md b/README.md
index bd8f22dd..1664e911 100644
--- a/README.md
+++ b/README.md
@@ -1,19 +1,42 @@
-[中文](https://github.com/HandyOrg/HandyControl/blob/master/README-cn.md) - [English](https://github.com/HandyOrg/HandyControl/blob/master/README.md)
+## Blogroll
-
+[SimpleFactoryGenerator](https://github.com/DingpingZhang/SimpleFactoryGenerator) - A simple factory source generator that enables the pattern to not violate the open-close principle.
-   [](https://www.nuget.org/packages/HandyControl)  [](https://gitter.im/HandyControl/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [](https://github.com/ghost1372/HandyControl/wiki) [](https://www.nuget.org/packages/HandyControl)
+[WpfExtensions](https://github.com/DingpingZhang/WpfExtensions) - Some syntactic sugar for Wpf development.
-# Welcome to HandyControl
+
+
+
+
+
+ 中文
+ ❤
+ English
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
## 面向中国
-### 加入讨论
+### 技术交流
-| | 西江月群 | 定风波群 | 广寒秋群 |
-|-|:-:|:-:|:-:|
-| 群号码 | [](//shang.qq.com/wpa/qunwpa?idkey=a571e5553c9d41e49c4f22f3a8b2865451497a795ff281fedf3285def247efc1) | [](//shang.qq.com/wpa/qunwpa?idkey=5c18622a0f6ee07a6f33afa8cdb85b1f72ea50e878271dfcec919c76b55afee7) | 微信群 |
-| 二维码 |  |  |  |
+[https://join.slack.com/t/handycontrol/shared_invite/zt-sw29prqd-okFmRlmETdtWhnF7C3foxA](https://join.slack.com/t/handycontrol/shared_invite/zt-sw29prqd-okFmRlmETdtWhnF7C3foxA)
### 码云
@@ -24,76 +47,110 @@
[https://handyorg.github.io/handycontrol/](https://handyorg.github.io/handycontrol/)
### 赞助
-如果您觉得HandyControl还不错,并且刚好有些闲钱,那么可以选择以下两种方式来赞助(记得入群联系我们呀~~):
-* [以HandyControl的名义为慈善事业做贡献](http://www.chinacharityfederation.org/ConfirmDonation/0.html?zhijie=3)
+* [以HandyControl的名义为慈善事业做贡献(请联系我们上赞助墙)](http://www.chinacharityfederation.org/ConfirmDonation/0.html?zhijie=3)
-* 为我们购买防脱洗发水
-
+* 为我们购买防脱洗发水 (支付宝扫码)
+
## Contributors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
## Backers
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
## Special thanks to
-[](https://visualstudio.microsoft.com/free-developer-offers/)
-[](https://www.jetbrains.com/?from=HandyControl)
-[](https://cakebuild.net/)
-[](https://gitter.im/)
+[](https://visualstudio.microsoft.com/free-developer-offers/)
+[](https://www.jetbrains.com/?from=HandyControl)
+[](https://cakebuild.net/)
+
+## Projects using HandyControl
+
+
+
+
+
+if your project is not listed here, let us know! 😀
## Usage
-Step 1: Add a reference to HandyControl or search for HandyControl on the nuget;
+Step 1: Add a reference to HandyControl or search for HandyControl on the nuget;
```Install-Package HandyControl```
@@ -116,7 +173,7 @@ Step 4: Enjoy coding
## VSIX packages for Visual Studio
-| [VS2019](https://marketplace.visualstudio.com/items?itemName=HandyOrg.handycontrolforvs2019) |
+| [VS2019](https://marketplace.visualstudio.com/items?itemName=HandyOrg.HandyControl) |
| ------------- |
## Stargazers over time
@@ -131,6 +188,18 @@ Step 4: Enjoy coding
## Latest examples
+### Watermark
+
+
+
+### AutoCompleteTextBox
+
+
+
+### ElementGroup
+
+
+
### UniformSpacingPanel

@@ -139,6 +208,8 @@ Step 4: Enjoy coding

+## History publication
+
### CheckComboBox

@@ -151,8 +222,6 @@ Step 4: Enjoy coding

-## History publication
-
### Screenshot

@@ -199,7 +268,7 @@ Step 4: Enjoy coding
### SplitButton
-
+
### FloatingBlock
@@ -215,7 +284,7 @@ Step 4: Enjoy coding
### ImageBlock
-
+

@@ -253,7 +322,7 @@ Step 4: Enjoy coding
### Badge
-
+
### Gravatar
@@ -273,11 +342,11 @@ Step 4: Enjoy coding
### Transfer
-
+
### ProgressButton
-
+
### CoverFlow
@@ -297,11 +366,11 @@ Step 4: Enjoy coding
### Rate
-
+
### BlurWindow
-
+
### FlipClock
@@ -333,7 +402,7 @@ Step 4: Enjoy coding
### CircleProgressBar
-
+
### ButtonStyle
@@ -435,7 +504,7 @@ Step 4: Enjoy coding
### StepBar
-
+
### GifImage
@@ -447,11 +516,11 @@ Step 4: Enjoy coding
### Calendar
-
+
### Clock
-
+
### CalendarWithClock
@@ -459,7 +528,7 @@ Step 4: Enjoy coding
### TextBlock
-
+
### RichTextBoxStyle
@@ -467,11 +536,11 @@ Step 4: Enjoy coding
### TextBox
-
+
### ComboBox
-
+
### NumericUpDown
@@ -483,27 +552,27 @@ Step 4: Enjoy coding
### PasswordBox
-
+
-### DataPicker
+### DatePicker
-
+
### TimePicker
-
+
### DateTimePicker
-
+
### ScrollViewer
-
+
### CirclePanel
-
+
### TransitioningContentControl
@@ -516,7 +585,3 @@ Step 4: Enjoy coding
### Brush

-
-## Switching configuration
-
-
diff --git a/SECURITY.md b/SECURITY.md
new file mode 100644
index 00000000..be912cf1
--- /dev/null
+++ b/SECURITY.md
@@ -0,0 +1,13 @@
+# Security Policy
+
+## Supported Versions
+
+At the moment, the only supported version of the **HandyControl** is the newest one. You can find it on *NuGet*.
+[https://www.nuget.org/packages/HandyControl/](https://www.nuget.org/packages/HandyControl)
+
+## Reporting a Vulnerability
+
+Security issues and bugs should be reported privately, by emailing support (at) [HandyOrg](https://github.com/HandyOrg)
+HandyOrg does not offer Bug Bounty for the **HandyControl** library.
+
+Please do not open issues for anything you think might have a security implication.
diff --git a/build/LICENSE b/build/LICENSE
new file mode 100644
index 00000000..0f3d16f7
--- /dev/null
+++ b/build/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2018-2023 HandyOrg
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/build/build-for-myget.nuspec b/build/build-for-myget.nuspec
new file mode 100644
index 00000000..4315c61e
--- /dev/null
+++ b/build/build-for-myget.nuspec
@@ -0,0 +1,264 @@
+
+
+
+ HandyControl
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/NaBian/HandyControl
+ Contains some simple and commonly used WPF controls
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.ca-ES.nuspec b/build/build.Lang.ca-ES.nuspec
new file mode 100644
index 00000000..f7e395f2
--- /dev/null
+++ b/build/build.Lang.ca-ES.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.ca-ES
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.cs.nuspec b/build/build.Lang.cs.nuspec
new file mode 100644
index 00000000..376d2e3d
--- /dev/null
+++ b/build/build.Lang.cs.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.cs
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.en.nuspec b/build/build.Lang.en.nuspec
new file mode 100644
index 00000000..f9f3c221
--- /dev/null
+++ b/build/build.Lang.en.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.en
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.es.nuspec b/build/build.Lang.es.nuspec
new file mode 100644
index 00000000..ba7ee7f7
--- /dev/null
+++ b/build/build.Lang.es.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.es
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.fa.nuspec b/build/build.Lang.fa.nuspec
new file mode 100644
index 00000000..d83818c9
--- /dev/null
+++ b/build/build.Lang.fa.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.fa
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.fr.nuspec b/build/build.Lang.fr.nuspec
new file mode 100644
index 00000000..a5f59c0c
--- /dev/null
+++ b/build/build.Lang.fr.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.fr
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.ja.nuspec b/build/build.Lang.ja.nuspec
new file mode 100644
index 00000000..c269e81b
--- /dev/null
+++ b/build/build.Lang.ja.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.ja
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.ko-KR.nuspec b/build/build.Lang.ko-KR.nuspec
new file mode 100644
index 00000000..e2010d8e
--- /dev/null
+++ b/build/build.Lang.ko-KR.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.ko-KR
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.pl.nuspec b/build/build.Lang.pl.nuspec
new file mode 100644
index 00000000..6066bcee
--- /dev/null
+++ b/build/build.Lang.pl.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.pl
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.pt-BR.nuspec b/build/build.Lang.pt-BR.nuspec
new file mode 100644
index 00000000..2cb0c441
--- /dev/null
+++ b/build/build.Lang.pt-BR.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.pt-BR
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.ru.nuspec b/build/build.Lang.ru.nuspec
new file mode 100644
index 00000000..d234ed62
--- /dev/null
+++ b/build/build.Lang.ru.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.ru
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.template.nuspec b/build/build.Lang.template.nuspec
new file mode 100644
index 00000000..15777b68
--- /dev/null
+++ b/build/build.Lang.template.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.{lang}
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.Lang.tr.nuspec b/build/build.Lang.tr.nuspec
new file mode 100644
index 00000000..3c4847b7
--- /dev/null
+++ b/build/build.Lang.tr.nuspec
@@ -0,0 +1,59 @@
+
+
+
+ HandyControl.Lang.tr
+ 3.5.0
+ HandyOrg
+ HandyOrg
+ HandyOrg
+ true
+ LICENSE
+ icon.png
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ Copyright © HandyOrg 2018-2023
+ WPF C# Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.cake b/build/build.cake
index bfd31c23..c9c534c3 100644
--- a/build/build.cake
+++ b/build/build.cake
@@ -16,63 +16,39 @@ Task("Build")
OutputDirectory = "lib/net40"
};
- var settingsNet45 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "net45",
- OutputDirectory = "lib/net45"
- };
-
- var settingsNet462 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "net462",
- OutputDirectory = "lib/net462"
- };
-
- var settingsNet47 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "net47",
- OutputDirectory = "lib/net47"
- };
-
- var settingsNet48 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "net48",
- OutputDirectory = "lib/net48"
- };
-
- var settingsCore30 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "netcoreapp3.0",
- OutputDirectory = "lib/netcoreapp3.0"
- };
-
- var settingsCore31 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "netcoreapp3.1",
- OutputDirectory = "lib/netcoreapp3.1"
- };
-
- var settingsNet50 = new DotNetCoreBuildSettings
- {
- Configuration = "Release",
- Framework = "net5.0-windows",
- OutputDirectory = "lib/net5.0-windows"
- };
-
DotNetCoreBuild("../src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj", settingsNet40);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet45);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet462);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet47);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet48);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsCore30);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsCore31);
- DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settingsNet50);
+
+ var frameworkList = new List
+ {
+ "net45",
+ "net451",
+ "net452",
+ "net46",
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48",
+ "net481",
+ "netcoreapp3.0",
+ "netcoreapp3.1",
+ "net5.0-windows",
+ "net6.0-windows",
+ "net7.0-windows"
+ };
+
+ foreach (var framework in frameworkList)
+ {
+ var settings = new DotNetCoreBuildSettings
+ {
+ Configuration = "Release",
+ Framework = framework,
+ OutputDirectory = $"lib/{framework.Split('-')[0]}"
+ };
+
+ DotNetCoreBuild("../src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj", settings);
+ }
});
-RunTarget(target);
\ No newline at end of file
+RunTarget(target);
diff --git a/build/build.nuspec b/build/build.nuspec
index 37542257..bfc9e9d9 100644
--- a/build/build.nuspec
+++ b/build/build.nuspec
@@ -2,108 +2,92 @@
HandyControl
- 3.0.0
+ 3.5.0
HandyOrg
HandyOrg
HandyOrg
true
LICENSE
icon.png
- https://github.com/NaBian/HandyControl
- Contains some commonly used simple WPF controls
+ https://github.com/HandyOrg/HandyControl
+ Contains some simple and commonly used WPF controls
Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
- Copyright © HandyOrg 2018-2020
+ Copyright © HandyOrg 2018-2023
WPF C# Control
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
@@ -112,4 +96,4 @@
-
\ No newline at end of file
+
diff --git a/build/create_lang_nuspec_file.py b/build/create_lang_nuspec_file.py
new file mode 100644
index 00000000..d8c50ea0
--- /dev/null
+++ b/build/create_lang_nuspec_file.py
@@ -0,0 +1,15 @@
+from pathlib import Path
+
+
+def main():
+ with open('build.Lang.template.nuspec', 'r', encoding='utf-8') as template_file:
+ template_content = template_file.read()
+
+ resx_file_folder = Path('../src/Shared/HandyControl_Shared/Properties/Langs')
+ for lang in [path.stem.lstrip('Lang.') for path in resx_file_folder.glob('Lang.*.resx')]:
+ with open(f'build.Lang.{lang}.nuspec', 'w', encoding='utf-8') as nuspec_file:
+ nuspec_file.write(template_content.format(lang=lang))
+
+
+if __name__ == '__main__':
+ main()
diff --git a/build/icon.png b/build/icon.png
new file mode 100644
index 00000000..f432bcaf
Binary files /dev/null and b/build/icon.png differ
diff --git a/build/tools/VisualStudioToolsManifest.xml b/build/tools/VisualStudioToolsManifest.xml
index 09561422..217bf875 100644
--- a/build/tools/VisualStudioToolsManifest.xml
+++ b/build/tools/VisualStudioToolsManifest.xml
@@ -3,6 +3,7 @@
+
@@ -28,6 +29,7 @@
+
@@ -62,17 +64,20 @@
+
+
+
diff --git a/doc/source/handycontrol/extend_controls/blurWindow/index.md b/doc/source/handycontrol/extend_controls/blurWindow/index.md
index 8f0cda90..341cf2fc 100644
--- a/doc/source/handycontrol/extend_controls/blurWindow/index.md
+++ b/doc/source/handycontrol/extend_controls/blurWindow/index.md
@@ -41,4 +41,4 @@ public class BlurWindow : Window
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/circlePanel/index.md b/doc/source/handycontrol/extend_controls/circlePanel/index.md
index 45493a1a..80f5c188 100644
--- a/doc/source/handycontrol/extend_controls/circlePanel/index.md
+++ b/doc/source/handycontrol/extend_controls/circlePanel/index.md
@@ -58,4 +58,4 @@ public class CirclePanel : Panel
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/circleProgressBar/index.md b/doc/source/handycontrol/extend_controls/circleProgressBar/index.md
index f3cb7e7a..3bc06ec8 100644
--- a/doc/source/handycontrol/extend_controls/circleProgressBar/index.md
+++ b/doc/source/handycontrol/extend_controls/circleProgressBar/index.md
@@ -40,4 +40,4 @@ public class CircleProgressBar : RangeBase
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/numericUpDown/index.md b/doc/source/handycontrol/extend_controls/numericUpDown/index.md
index ad0773ae..59860a92 100644
--- a/doc/source/handycontrol/extend_controls/numericUpDown/index.md
+++ b/doc/source/handycontrol/extend_controls/numericUpDown/index.md
@@ -5,8 +5,8 @@ title: NumericUpDown 数值选择控件
NumericUpDown 控件看起来像一对用户可以单击来调整值的箭头按钮和TextBox的组合,该控件显示并设置数值(Value)。 用户可以通过单击向上和向下箭头,或通过在控件的TextBox部分中键入一个数字来改变Value。
``` CS
-[TemplatePart(Name = ElementTextBox, Type = typeof(DatePickerTextBox))]
-public class DatePicker : System.Windows.Controls.DatePicker, IDataInput
+[TemplatePart(Name = ElementTextBox, Type = typeof(TextBox))]
+public class NumericUpDown : Control
```
# 创建NumericUpDown并设置Value
@@ -86,17 +86,11 @@ numericUpDown.Maximum = 1000;
| Minimum | 获取或设置最小允许值 |
| Increment | 获取或设置单击向上或向下按钮时,数字显示框(也称作 up-down 控件)递增或递减的值。 |
| DecimalPlaces |获取或设置NumericUpDown中要显示的十进制位数。 此属性不会影响 Value 属性。 |
-| VerifyFunc | 获取或设置数据验证委托 |
| IsError | 获取或设置数据是否错误 |
| ErrorStr | 获取或设置错误提示 |
| TextType | 获取或设置文本类型 |
| ShowClearButton | 获取或设置是否显示清除按钮 |
-# 方法
-
-| 方法 | 描述 |
-| ---------------- | ------------------ |
-| VerifyData() | 验证数据 |
# 事件
diff --git a/doc/source/handycontrol/extend_controls/progressButton/index.md b/doc/source/handycontrol/extend_controls/progressButton/index.md
index 7fd76d1b..1ed5d278 100644
--- a/doc/source/handycontrol/extend_controls/progressButton/index.md
+++ b/doc/source/handycontrol/extend_controls/progressButton/index.md
@@ -28,4 +28,4 @@ public class ProgressButton : ToggleButton
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/rate/index.md b/doc/source/handycontrol/extend_controls/rate/index.md
index 8e8d9fd9..13ead7cd 100644
--- a/doc/source/handycontrol/extend_controls/rate/index.md
+++ b/doc/source/handycontrol/extend_controls/rate/index.md
@@ -52,4 +52,4 @@ public class Rate : RegularItemsControl
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/splitButton/index.md b/doc/source/handycontrol/extend_controls/splitButton/index.md
index 33f79879..aa42bdbc 100644
--- a/doc/source/handycontrol/extend_controls/splitButton/index.md
+++ b/doc/source/handycontrol/extend_controls/splitButton/index.md
@@ -51,4 +51,4 @@ public class SplitButton : ButtonBase
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/stepBar/index.md b/doc/source/handycontrol/extend_controls/stepBar/index.md
index f21fe2f2..c8fea8d6 100644
--- a/doc/source/handycontrol/extend_controls/stepBar/index.md
+++ b/doc/source/handycontrol/extend_controls/stepBar/index.md
@@ -90,4 +90,4 @@ public class StepBar : ItemsControl
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/extend_controls/transfer/index.md b/doc/source/handycontrol/extend_controls/transfer/index.md
index 9e01dcee..ac215d55 100644
--- a/doc/source/handycontrol/extend_controls/transfer/index.md
+++ b/doc/source/handycontrol/extend_controls/transfer/index.md
@@ -41,4 +41,4 @@ public class Transfer : SimpleItemsControl
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/doc/source/handycontrol/native_controls/calendar/index.md b/doc/source/handycontrol/native_controls/calendar/index.md
index 1ffb9210..ab50db3a 100644
--- a/doc/source/handycontrol/native_controls/calendar/index.md
+++ b/doc/source/handycontrol/native_controls/calendar/index.md
@@ -12,5 +12,5 @@ title: Calendar 日历
{% code %}
{% endcode %}
-
+
{% endnote %}
\ No newline at end of file
diff --git a/doc/source/handycontrol/native_controls/index.md b/doc/source/handycontrol/native_controls/index.md
index f5e900f0..22e46610 100644
--- a/doc/source/handycontrol/native_controls/index.md
+++ b/doc/source/handycontrol/native_controls/index.md
@@ -5,7 +5,7 @@ title: 原生控件
原生控件是指WPF框架自带的控件,除此之外,通过附加属性实现简单的功能扩展。
{% note warning %}
-HandyControl中,几乎所有的原生控件都有默认实现的基样式(即定义样式的时候,没有显示给定Key值)。
+HandyControl中,几乎所有的原生控件都有默认实现的基样式(即定义样式的时候,没有显式给定Key值)。
{% endnote %}
{% note warning %}
diff --git a/doc/source/handycontrol/native_controls/textBlock/index.md b/doc/source/handycontrol/native_controls/textBlock/index.md
index b1baf500..9b29f5dd 100644
--- a/doc/source/handycontrol/native_controls/textBlock/index.md
+++ b/doc/source/handycontrol/native_controls/textBlock/index.md
@@ -34,4 +34,4 @@ title: TextBlock 文本块
```
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/Installers/VS2019/HandyControl_VS2019.sln b/extension/visual studio/HandyControl_VS_Templates.sln
similarity index 80%
rename from Installers/VS2019/HandyControl_VS2019.sln
rename to extension/visual studio/HandyControl_VS_Templates.sln
index 2c1629ff..b739d7e1 100644
--- a/Installers/VS2019/HandyControl_VS2019.sln
+++ b/extension/visual studio/HandyControl_VS_Templates.sln
@@ -3,12 +3,14 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.28803.352
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandyControl_VS2019", "HandyControl_VS2019\HandyControl_VS2019.csproj", "{3F0F7B9E-C150-4FAA-9274-4F6F0A96B8CA}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandyControl_VS_Templates", "HandyControl_VS_Templates\HandyControl_VS_Templates.csproj", "{3F0F7B9E-C150-4FAA-9274-4F6F0A96B8CA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfApp", "WpfApp\WpfApp.csproj", "{83C70EB1-3A3F-4812-B86C-C7D1936699EB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfCoreApp", "WpfCoreApp\WpfCoreApp.csproj", "{2F6E9FB8-F579-40CF-A151-57F281F08E1B}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Project Templates", "Project Templates", "{26BC7FA1-50F7-46C7-84FE-0D8ABAC47E07}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -31,6 +33,10 @@ Global
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {83C70EB1-3A3F-4812-B86C-C7D1936699EB} = {26BC7FA1-50F7-46C7-84FE-0D8ABAC47E07}
+ {2F6E9FB8-F579-40CF-A151-57F281F08E1B} = {26BC7FA1-50F7-46C7-84FE-0D8ABAC47E07}
+ EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A7F567D2-5FA3-4E17-A8A8-CDAFC217BFF5}
EndGlobalSection
diff --git a/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019.csproj b/extension/visual studio/HandyControl_VS_Templates/HandyControl_VS_Templates.csproj
similarity index 89%
rename from Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019.csproj
rename to extension/visual studio/HandyControl_VS_Templates/HandyControl_VS_Templates.csproj
index ba720bad..056551c0 100644
--- a/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019.csproj
+++ b/extension/visual studio/HandyControl_VS_Templates/HandyControl_VS_Templates.csproj
@@ -13,10 +13,10 @@
{3F0F7B9E-C150-4FAA-9274-4F6F0A96B8CA}
Library
Properties
- HandyControl_VS2019
- HandyControl_VS2019
+ HandyControl_VS_Templates
+ HandyControl VS Templates
v4.7.2
- true
+ false
true
true
false
@@ -46,7 +46,6 @@
-
@@ -57,8 +56,13 @@
-
-
+
+ compile; build; native; contentfiles; analyzers; buildtransitive
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
diff --git a/Installers/VS2019/HandyControl_VS2019/License.txt b/extension/visual studio/HandyControl_VS_Templates/License.txt
similarity index 95%
rename from Installers/VS2019/HandyControl_VS2019/License.txt
rename to extension/visual studio/HandyControl_VS_Templates/License.txt
index 0c1c18de..ce89800c 100644
--- a/Installers/VS2019/HandyControl_VS2019/License.txt
+++ b/extension/visual studio/HandyControl_VS_Templates/License.txt
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2018-2020 HandyOrg
+Copyright (c) 2018-2021 HandyOrg
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
\ No newline at end of file
+SOFTWARE.
diff --git a/Installers/VS2019/HandyControl_VS2019/Properties/AssemblyInfo.cs b/extension/visual studio/HandyControl_VS_Templates/Properties/AssemblyInfo.cs
similarity index 51%
rename from Installers/VS2019/HandyControl_VS2019/Properties/AssemblyInfo.cs
rename to extension/visual studio/HandyControl_VS_Templates/Properties/AssemblyInfo.cs
index 94d87828..9acd9636 100644
--- a/Installers/VS2019/HandyControl_VS2019/Properties/AssemblyInfo.cs
+++ b/extension/visual studio/HandyControl_VS_Templates/Properties/AssemblyInfo.cs
@@ -1,14 +1,14 @@
using System.Reflection;
using System.Runtime.InteropServices;
-[assembly: AssemblyTitle("HandyControl_VS2019")]
+[assembly: AssemblyTitle("HandyControl VS Templates")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("HandyControl_VS2019")]
-[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2020")]
+[assembly: AssemblyProduct("HandyControl VS Templates")]
+[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("2.1.0")]
-[assembly: AssemblyFileVersion("2.1.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("3.3.0")]
+[assembly: AssemblyFileVersion("3.3.0")]
diff --git a/Installers/VS2019/HandyControl_VS2019/icon_100_100.png b/extension/visual studio/HandyControl_VS_Templates/icon_100_100.png
similarity index 100%
rename from Installers/VS2019/HandyControl_VS2019/icon_100_100.png
rename to extension/visual studio/HandyControl_VS_Templates/icon_100_100.png
diff --git a/Installers/VS2019/HandyControl_VS2019/icon_300_300.png b/extension/visual studio/HandyControl_VS_Templates/icon_300_300.png
similarity index 100%
rename from Installers/VS2019/HandyControl_VS2019/icon_300_300.png
rename to extension/visual studio/HandyControl_VS_Templates/icon_300_300.png
diff --git a/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest b/extension/visual studio/HandyControl_VS_Templates/source.extension.vsixmanifest
similarity index 72%
rename from Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
rename to extension/visual studio/HandyControl_VS_Templates/source.extension.vsixmanifest
index 74e40f35..6d469c17 100644
--- a/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
+++ b/extension/visual studio/HandyControl_VS_Templates/source.extension.vsixmanifest
@@ -1,8 +1,8 @@
-
- HandyControl for VS2019
+
+ HandyControl VS Templates
This VSIX Project will help people initialize a HandyControl project.
https://handyorg.github.io/handycontrol
License.txt
@@ -13,18 +13,23 @@
WPF C# Control
-
-
-
+
+
+ x86
+
+
+ x86
+
-
+
-
diff --git a/Installers/VS2019/WpfApp/App.xaml b/extension/visual studio/WpfApp/App.xaml
similarity index 100%
rename from Installers/VS2019/WpfApp/App.xaml
rename to extension/visual studio/WpfApp/App.xaml
diff --git a/Installers/VS2019/WpfApp/App.xaml.cs b/extension/visual studio/WpfApp/App.xaml.cs
similarity index 100%
rename from Installers/VS2019/WpfApp/App.xaml.cs
rename to extension/visual studio/WpfApp/App.xaml.cs
diff --git a/Installers/VS2019/WpfApp/AssemblyInfo.cs b/extension/visual studio/WpfApp/AssemblyInfo.cs
similarity index 89%
rename from Installers/VS2019/WpfApp/AssemblyInfo.cs
rename to extension/visual studio/WpfApp/AssemblyInfo.cs
index 9eac2dc2..a3e3ceb3 100644
--- a/Installers/VS2019/WpfApp/AssemblyInfo.cs
+++ b/extension/visual studio/WpfApp/AssemblyInfo.cs
@@ -7,7 +7,7 @@ using System.Windows;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("$safeprojectname$")]
-[assembly: AssemblyCopyright("Copyright © $username$ 2019")]
+[assembly: AssemblyCopyright("Copyright © $username$ $year$")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
diff --git a/Installers/VS2019/WpfApp/MainWindow.xaml b/extension/visual studio/WpfApp/MainWindow.xaml
similarity index 100%
rename from Installers/VS2019/WpfApp/MainWindow.xaml
rename to extension/visual studio/WpfApp/MainWindow.xaml
diff --git a/Installers/VS2019/WpfApp/MainWindow.xaml.cs b/extension/visual studio/WpfApp/MainWindow.xaml.cs
similarity index 100%
rename from Installers/VS2019/WpfApp/MainWindow.xaml.cs
rename to extension/visual studio/WpfApp/MainWindow.xaml.cs
diff --git a/Installers/VS2019/WpfApp/ProjectTemplate.csproj b/extension/visual studio/WpfApp/ProjectTemplate.csproj
similarity index 86%
rename from Installers/VS2019/WpfApp/ProjectTemplate.csproj
rename to extension/visual studio/WpfApp/ProjectTemplate.csproj
index d6cec36e..8476138f 100644
--- a/Installers/VS2019/WpfApp/ProjectTemplate.csproj
+++ b/extension/visual studio/WpfApp/ProjectTemplate.csproj
@@ -8,9 +8,8 @@
WinExe
$safeprojectname$
$safeprojectname$
- v4.7.2
+ v$targetframeworkversion$
512
- {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
4
true
@@ -34,9 +33,9 @@
4
-
- ..\packages\HandyControl.2.5.0.1\lib\net47\HandyControl.dll
-
+
+
+
4.0
@@ -68,8 +67,5 @@
Code
-
-
-
-
\ No newline at end of file
+
diff --git a/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs b/extension/visual studio/WpfApp/Properties/AssemblyInfo.cs
similarity index 50%
rename from Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
rename to extension/visual studio/WpfApp/Properties/AssemblyInfo.cs
index e2fda6dc..08d246c7 100644
--- a/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
+++ b/extension/visual studio/WpfApp/Properties/AssemblyInfo.cs
@@ -1,14 +1,14 @@
using System.Reflection;
using System.Runtime.InteropServices;
-[assembly: AssemblyTitle("HandyControl_VS2019_WpfApp")]
+[assembly: AssemblyTitle("HandyControl VS Templates WpfApp")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("HandyControl_VS2019_WpfApp")]
-[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2020")]
+[assembly: AssemblyProduct("HandyControl VS Templates WpfApp")]
+[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("2.5.0")]
-[assembly: AssemblyFileVersion("2.5.0")]
+[assembly: AssemblyVersion("3.3.0")]
+[assembly: AssemblyFileVersion("3.3.0")]
diff --git a/Installers/VS2019/WpfApp/WpfApp.csproj b/extension/visual studio/WpfApp/WpfApp.csproj
similarity index 98%
rename from Installers/VS2019/WpfApp/WpfApp.csproj
rename to extension/visual studio/WpfApp/WpfApp.csproj
index 5c42f1ff..03c2fe4e 100644
--- a/Installers/VS2019/WpfApp/WpfApp.csproj
+++ b/extension/visual studio/WpfApp/WpfApp.csproj
@@ -66,7 +66,6 @@
-
diff --git a/extension/visual studio/WpfApp/WpfApp.vstemplate b/extension/visual studio/WpfApp/WpfApp.vstemplate
new file mode 100644
index 00000000..34f4c6fb
--- /dev/null
+++ b/extension/visual studio/WpfApp/WpfApp.vstemplate
@@ -0,0 +1,29 @@
+
+
+
+ HandyControl WPF App (.NET Framework)
+ Creates a HandyControl WPF App (.NET Framework)
+ icon.ico
+ CSharp
+ 4.0
+ true
+ HandyControlWpfApp
+ true
+ csharp
+ windows
+ desktop
+ HandyControl
+ Enabled
+ true
+ true
+
+
+
+ AssemblyInfo.cs
+ App.xaml
+ App.xaml.cs
+ MainWindow.xaml
+ MainWindow.xaml.cs
+
+
+
diff --git a/Installers/VS2019/WpfApp/icon.ico b/extension/visual studio/WpfApp/icon.ico
similarity index 100%
rename from Installers/VS2019/WpfApp/icon.ico
rename to extension/visual studio/WpfApp/icon.ico
diff --git a/Installers/VS2019/WpfCoreApp/App.xaml b/extension/visual studio/WpfCoreApp/App.xaml
similarity index 100%
rename from Installers/VS2019/WpfCoreApp/App.xaml
rename to extension/visual studio/WpfCoreApp/App.xaml
diff --git a/Installers/VS2019/WpfCoreApp/App.xaml.cs b/extension/visual studio/WpfCoreApp/App.xaml.cs
similarity index 100%
rename from Installers/VS2019/WpfCoreApp/App.xaml.cs
rename to extension/visual studio/WpfCoreApp/App.xaml.cs
diff --git a/extension/visual studio/WpfCoreApp/AssemblyInfo.cs b/extension/visual studio/WpfCoreApp/AssemblyInfo.cs
new file mode 100644
index 00000000..9ef4842b
--- /dev/null
+++ b/extension/visual studio/WpfCoreApp/AssemblyInfo.cs
@@ -0,0 +1,3 @@
+using System.Windows;
+
+[assembly: ThemeInfo(ResourceDictionaryLocation.None, ResourceDictionaryLocation.SourceAssembly)]
diff --git a/Installers/VS2019/WpfCoreApp/MainWindow.xaml b/extension/visual studio/WpfCoreApp/MainWindow.xaml
similarity index 100%
rename from Installers/VS2019/WpfCoreApp/MainWindow.xaml
rename to extension/visual studio/WpfCoreApp/MainWindow.xaml
diff --git a/Installers/VS2019/WpfCoreApp/MainWindow.xaml.cs b/extension/visual studio/WpfCoreApp/MainWindow.xaml.cs
similarity index 100%
rename from Installers/VS2019/WpfCoreApp/MainWindow.xaml.cs
rename to extension/visual studio/WpfCoreApp/MainWindow.xaml.cs
diff --git a/extension/visual studio/WpfCoreApp/ProjectTemplate.csproj b/extension/visual studio/WpfCoreApp/ProjectTemplate.csproj
new file mode 100644
index 00000000..31d34b72
--- /dev/null
+++ b/extension/visual studio/WpfCoreApp/ProjectTemplate.csproj
@@ -0,0 +1,17 @@
+
+
+
+ WinExe
+ true
+ Copyright © $username$ $year$
+ netcoreapp3.0
+ latest
+ true
+ true
+ enable
+
+
+
+
+
+
diff --git a/extension/visual studio/WpfCoreApp/Properties/AssemblyInfo.cs b/extension/visual studio/WpfCoreApp/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000..c63e5480
--- /dev/null
+++ b/extension/visual studio/WpfCoreApp/Properties/AssemblyInfo.cs
@@ -0,0 +1,14 @@
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+[assembly: AssemblyTitle("HandyControl VS Templates WpfCoreApp")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("HandyControl VS Templates WpfCoreApp")]
+[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2021")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: ComVisible(false)]
+[assembly: AssemblyVersion("3.3.0")]
+[assembly: AssemblyFileVersion("3.3.0")]
diff --git a/Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj b/extension/visual studio/WpfCoreApp/WpfCoreApp.csproj
similarity index 99%
rename from Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj
rename to extension/visual studio/WpfCoreApp/WpfCoreApp.csproj
index 6a55e8df..baf227fc 100644
--- a/Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj
+++ b/extension/visual studio/WpfCoreApp/WpfCoreApp.csproj
@@ -60,6 +60,7 @@
MainWindow.xaml
+
diff --git a/extension/visual studio/WpfCoreApp/WpfCoreApp.vstemplate b/extension/visual studio/WpfCoreApp/WpfCoreApp.vstemplate
new file mode 100644
index 00000000..9d39835d
--- /dev/null
+++ b/extension/visual studio/WpfCoreApp/WpfCoreApp.vstemplate
@@ -0,0 +1,28 @@
+
+
+
+ HandyControl WPF App (.NET Core)
+ Creates a HandyControl WPF App (.NET Core)
+ icon.ico
+ CSharp
+ true
+ HandyControlWpfCoreApp
+ true
+ csharp
+ windows
+ desktop
+ HandyControl
+ Enabled
+ true
+ true
+
+
+
+ AssemblyInfo.cs
+ App.xaml
+ App.xaml.cs
+ MainWindow.xaml
+ MainWindow.xaml.cs
+
+
+
diff --git a/Installers/VS2019/WpfCoreApp/icon.ico b/extension/visual studio/WpfCoreApp/icon.ico
similarity index 100%
rename from Installers/VS2019/WpfCoreApp/icon.ico
rename to extension/visual studio/WpfCoreApp/icon.ico
diff --git a/src/Directory.Build.Props b/src/Directory.Build.Props
index 3cf3de12..9c09fa44 100644
--- a/src/Directory.Build.Props
+++ b/src/Directory.Build.Props
@@ -1,11 +1,13 @@
-
+
true
- 3.0.0.0
- 3.0.0.0
- 3.0.0.0
+ 3.5.0.0
+ 3.5.0.0
+ 3.5.0.0
latest
- Copyright © HandyOrg 2018-2020
+ Copyright © HandyOrg 2018-2023
HandyOrg
+ https://github.com/HandyOrg/HandyControl
+ https://handyorg.github.io/
diff --git a/src/HandyControl.sln b/src/HandyControl.sln
index 39a603b4..bdeea6fc 100644
--- a/src/HandyControl.sln
+++ b/src/HandyControl.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.28729.10
+# Visual Studio Version 17
+VisualStudioVersion = 17.1.32228.430
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HandyControl_Net_GE45", "Net_GE45\HandyControl_Net_GE45\HandyControl_Net_GE45.csproj", "{DC966E3D-BCFF-4652-98CF-070E5494749A}"
EndProject
@@ -25,16 +25,36 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HandyControlDemo_Code", "Sh
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.Windows.Shell", "Shared\Microsoft.Windows.Shell\Microsoft.Windows.Shell.shproj", "{BBE51380-8B21-49FF-9CFC-B29447A40999}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{7F52CFD3-EF6C-4D3C-A9D4-B25BF726382A}"
+ ProjectSection(SolutionItems) = preProject
+ Directory.Build.Props = Directory.Build.Props
+ EndProjectSection
+EndProject
+Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.Expression.Drawing", "Shared\Microsoft.Expression.Drawing\Microsoft.Expression.Drawing.shproj", "{E5DC7C25-6293-4660-B5FB-186496386B90}"
+EndProject
+Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "System.Windows.Interactivity", "Shared\System.Windows.Interactivity\System.Windows.Interactivity.shproj", "{6F0C9CFF-2269-46A7-9664-478354C582A4}"
+EndProject
+Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.Expression.Interactions", "Shared\Microsoft.Expression.Interactions\Microsoft.Expression.Interactions.shproj", "{3531857C-28FC-4E0F-82D9-BFBB70740E04}"
+EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Shared\HandyControl_Shared\HandyControl_Shared.projitems*{32204503-2ef0-4681-ae13-aa1feb6c658a}*SharedItemsImports = 5
+ Shared\Microsoft.Expression.Drawing\Microsoft.Expression.Drawing.projitems*{32204503-2ef0-4681-ae13-aa1feb6c658a}*SharedItemsImports = 5
+ Shared\Microsoft.Expression.Interactions\Microsoft.Expression.Interactions.projitems*{32204503-2ef0-4681-ae13-aa1feb6c658a}*SharedItemsImports = 5
Shared\Microsoft.Windows.Shell\Microsoft.Windows.Shell.projitems*{32204503-2ef0-4681-ae13-aa1feb6c658a}*SharedItemsImports = 5
+ Shared\System.Windows.Interactivity\System.Windows.Interactivity.projitems*{32204503-2ef0-4681-ae13-aa1feb6c658a}*SharedItemsImports = 5
+ Shared\Microsoft.Expression.Interactions\Microsoft.Expression.Interactions.projitems*{3531857c-28fc-4e0f-82d9-bfbb70740e04}*SharedItemsImports = 13
+ Shared\System.Windows.Interactivity\System.Windows.Interactivity.projitems*{6f0c9cff-2269-46a7-9664-478354c582a4}*SharedItemsImports = 13
Shared\HandyControlDemo_Shared\HandyControlDemo_Shared.projitems*{9a7b52e6-94bb-4e7e-bb6a-7cf6761b79a7}*SharedItemsImports = 5
Shared\HandyControl_Shared\HandyControl_Shared.projitems*{aac11083-faca-405d-9197-5c1212d65656}*SharedItemsImports = 13
Shared\Microsoft.Windows.Shell\Microsoft.Windows.Shell.projitems*{bbe51380-8b21-49ff-9cfc-b29447a40999}*SharedItemsImports = 13
Shared\HandyControlDemo_Shared\HandyControlDemo_Shared.projitems*{c4694269-c9b8-45d5-87f8-d0088c532510}*SharedItemsImports = 13
Shared\HandyControlDemo_Shared\HandyControlDemo_Shared.projitems*{d8ae88f8-c36b-4d10-a7f9-22ffcfba5231}*SharedItemsImports = 5
Shared\HandyControl_Shared\HandyControl_Shared.projitems*{dc966e3d-bcff-4652-98cf-070e5494749a}*SharedItemsImports = 5
+ Shared\Microsoft.Expression.Drawing\Microsoft.Expression.Drawing.projitems*{dc966e3d-bcff-4652-98cf-070e5494749a}*SharedItemsImports = 5
+ Shared\Microsoft.Expression.Interactions\Microsoft.Expression.Interactions.projitems*{dc966e3d-bcff-4652-98cf-070e5494749a}*SharedItemsImports = 5
+ Shared\System.Windows.Interactivity\System.Windows.Interactivity.projitems*{dc966e3d-bcff-4652-98cf-070e5494749a}*SharedItemsImports = 5
+ Shared\Microsoft.Expression.Drawing\Microsoft.Expression.Drawing.projitems*{e5dc7c25-6293-4660-b5fb-186496386b90}*SharedItemsImports = 13
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -88,6 +108,9 @@ Global
{D8AE88F8-C36B-4D10-A7F9-22FFCFBA5231} = {35E3F9C0-8924-4536-BE09-F3761FDBF066}
{D8A4748C-0500-4F63-BC47-3506658C68F7} = {0938270D-E9F0-489B-AF9E-5C5AD7C69897}
{BBE51380-8B21-49FF-9CFC-B29447A40999} = {0938270D-E9F0-489B-AF9E-5C5AD7C69897}
+ {E5DC7C25-6293-4660-B5FB-186496386B90} = {0938270D-E9F0-489B-AF9E-5C5AD7C69897}
+ {6F0C9CFF-2269-46A7-9664-478354C582A4} = {0938270D-E9F0-489B-AF9E-5C5AD7C69897}
+ {3531857C-28FC-4E0F-82D9-BFBB70740E04} = {0938270D-E9F0-489B-AF9E-5C5AD7C69897}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {D4636382-1A18-4079-A3E7-054DD970F179}
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 5c85468d..6b412450 100644
--- a/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
+++ b/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
@@ -6,13 +6,16 @@
net40
..\..\Shared\HandyControlDemo_Shared\Resources\Img\icon.ico
0108;MSB3026;MSB3061
- true
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
@@ -169,15 +172,24 @@
Resources\Img\Flag\ca-Es.png
+
+ Resources\Img\Flag\cs.png
+
Resources\Img\Flag\en.png
+
+ Resources\Img\Flag\es.png
+
Resources\Img\Flag\fa.png
Resources\Img\Flag\fr.png
+
+ Resources\Img\Flag\ja.png
+
Resources\Img\Flag\ko-KR.png
@@ -193,216 +205,15 @@
Resources\Img\Flag\tr.png
+
+ Resources\Img\Slack.png
+
Resources\Img\icon-white.ico
Resources\Img\icon.ico
-
- Resources\Img\qq_group_1.jpg
-
-
- Resources\Img\qq_group_2.jpg
-
-
- Resources\Img\LeftMainContent\Animation_16x.png
-
-
- Resources\Img\LeftMainContent\BorderElement_16x.png
-
-
- Resources\Img\LeftMainContent\Brush_16x.png
-
-
- Resources\Img\LeftMainContent\Bubble_16xLG.png
-
-
- Resources\Img\LeftMainContent\ButtonClick_16x.png
-
-
- Resources\Img\LeftMainContent\Calendar_16x.png
-
-
- Resources\Img\LeftMainContent\Carousel_16x.png
-
-
- Resources\Img\LeftMainContent\CheckBox_16x.png
-
-
- Resources\Img\LeftMainContent\CheckBoxList_16x.png
-
-
- Resources\Img\LeftMainContent\ColorPalette_16x.png
-
-
- Resources\Img\LeftMainContent\ColorWheel_16x.png
-
-
- Resources\Img\LeftMainContent\ComboBox_16x.png
-
-
- Resources\Img\LeftMainContent\ContextMenu_16x.png
-
-
- Resources\Img\LeftMainContent\DataGrid_16x.png
-
-
- Resources\Img\LeftMainContent\DatePicker_16x.png
-
-
- Resources\Img\LeftMainContent\DetailDataView_16x.png
-
-
- Resources\Img\LeftMainContent\Dialog_16x.png
-
-
- Resources\Img\LeftMainContent\DotLarge_16x.png
-
-
- Resources\Img\LeftMainContent\Expander_16x.png
-
-
- Resources\Img\LeftMainContent\FlipVertical_16x.png
-
-
- Resources\Img\LeftMainContent\Flow_16x.png
-
-
- Resources\Img\LeftMainContent\GoToTop_16x.png
-
-
- Resources\Img\LeftMainContent\GroupBox_16x.png
-
-
- Resources\Img\LeftMainContent\HoverMenu_16x.png
-
-
- Resources\Img\LeftMainContent\Image_16x.png
-
-
- Resources\Img\LeftMainContent\ImageBrowser_16x.png
-
-
- Resources\Img\LeftMainContent\Label_16x.png
-
-
- Resources\Img\LeftMainContent\layout-FlexLayout-16.png
-
-
- Resources\Img\LeftMainContent\LinearCarousel_16x.png
-
-
- Resources\Img\LeftMainContent\ListBox_16x.png
-
-
- Resources\Img\LeftMainContent\ListView_16x.png
-
-
- Resources\Img\LeftMainContent\Loading_Blue_16x.png
-
-
- Resources\Img\LeftMainContent\Message_16x.png
-
-
- Resources\Img\LeftMainContent\NotificationHub_16x.png
-
-
- Resources\Img\LeftMainContent\NumericListBox_16x.png
-
-
- Resources\Img\LeftMainContent\Paginator_16x.png
-
-
- Resources\Img\LeftMainContent\Panel_16x.png
-
-
- Resources\Img\LeftMainContent\PasswordBox_16x.png
-
-
- Resources\Img\LeftMainContent\Path_16x.png
-
-
- Resources\Img\LeftMainContent\ProgressBar_16x.png
-
-
- Resources\Img\LeftMainContent\ProgressButton_16x.png
-
-
- Resources\Img\LeftMainContent\RadioButton_16x.png
-
-
- Resources\Img\LeftMainContent\PropertyGridEditorPart_16x.png
-
-
- Resources\Img\LeftMainContent\RepeatButton_16x.png
-
-
- Resources\Img\LeftMainContent\RichTextBox_16x.png
-
-
- Resources\Img\LeftMainContent\ScrollBox_16x.png
-
-
- Resources\Img\LeftMainContent\Search_16x.png
-
-
- Resources\Img\LeftMainContent\Shield_16x.png
-
-
- Resources\Img\LeftMainContent\Slider_16x.png
-
-
- Resources\Img\LeftMainContent\SortAscending_grey_16x.png
-
-
- Resources\Img\LeftMainContent\SplitterControl_16x.png
-
-
- Resources\Img\LeftMainContent\Star.png
-
-
- Resources\Img\LeftMainContent\TabPage_16x.png
-
-
- Resources\Img\LeftMainContent\Tag_16x.png
-
-
- Resources\Img\LeftMainContent\TextBlock_16x.png
-
-
- Resources\Img\LeftMainContent\TextBox_16x.png
-
-
- Resources\Img\LeftMainContent\Timeline_16x.png
-
-
- Resources\Img\LeftMainContent\TimePicker_16x.png
-
-
- Resources\Img\LeftMainContent\Time_color_16x.png
-
-
- Resources\Img\LeftMainContent\Toggle_16x.png
-
-
- Resources\Img\LeftMainContent\ToolBar_16x.png
-
-
- Resources\Img\LeftMainContent\Transfer_16x.png
-
-
- Resources\Img\LeftMainContent\TreeView_16x.png
-
-
- Resources\Img\LeftMainContent\User_16x.png
-
-
- Resources\Img\LeftMainContent\WindowsForm_16x.png
-
-
- Resources\Img\LeftMainContent\GridPane_16x.png
-
Resources\Img\under_construction.gif
@@ -421,90 +232,24 @@
Resources\Img\DevOps\DevOps-TestPlans.png
-
- Resources\Img\LeftMainContent\MainMenuControl_16x.png
-
Resources\fabric-icons.ttf
+
+ Resources\xshd\CSharp-Dark.xshd
+
+
+ Resources\xshd\XML-Dark.xshd
+
Resources\Registry.txt
-
- Resources\Img\LeftMainContent\brackets_Square_16xLG.png
-
-
- Resources\Img\LeftMainContent\ButtonGroup_16x.png
-
-
- Resources\Img\LeftMainContent\VSO_Card_16x.png
-
-
- Resources\Img\LeftMainContent\ImageStack_16x.png
-
-
- Resources\Img\LeftMainContent\IncreaseHorizontalSpacing_16x.png
-
-
- Resources\Img\LeftMainContent\Dynamic_16x.png
-
-
- Resources\Img\LeftMainContent\PolygonHexagon_16x.png
-
-
- Resources\Img\LeftMainContent\HandyControl.png
-
-
- Resources\Img\LeftMainContent\Procedure_16x.png
-
Resources\Img\Dance.png
-
- Resources\Img\LeftMainContent\thumbs_up.png
-
-
- Resources\Img\LeftMainContent\SplitButton_16x.png
-
-
- Resources\Img\LeftMainContent\DataGenerator_16x.png
-
-
- Resources\Img\LeftMainContent\DottedSplitter_16x.png
-
-
- Resources\Img\LeftMainContent\PopupCursor_16x.png
-
-
- Resources\Img\LeftMainContent\TransitioningContentControl_16x.png
-
-
- Resources\Img\LeftMainContent\View_Portrait_16x.png
-
-
- Resources\Img\LeftMainContent\TransformRelative_16x.png
-
-
- Resources\Img\LeftMainContent\Effects_16x.png
-
-
- Resources\Img\LeftMainContent\Ellipsis_16x.png
-
-
- Resources\Img\LeftMainContent\WPFFlowDocument_16x.png
-
-
- Resources\Img\LeftMainContent\OutlinedRectangleTool_16x.png
-
-
- Resources\Img\LeftMainContent\frame_16xLG.png
-
Resources\Img\cloud.png
-
- Resources\Img\LeftMainContent\WindowScreenshot_16x.png
-
@@ -513,15 +258,24 @@
Properties\Langs\Lang.ca-ES.resx
+
+ Properties\Langs\Lang.cs.resx
+
Properties\Langs\Lang.en.resx
+
+ Properties\Langs\Lang.es.resx
+
Properties\Langs\Lang.fa.resx
Properties\Langs\Lang.fr.resx
+
+ Properties\Langs\Lang.ja.resx
+
Properties\Langs\Lang.ko-KR.resx
@@ -567,8 +321,10 @@
if not exist Langs md Langs
rd /s /q Langs\en
+ rd /s /q Langs\es
rd /s /q Langs\fa
rd /s /q Langs\fr
+ rd /s /q Langs\ja
rd /s /q Langs\ko-KR
rd /s /q Langs\pt-BR
rd /s /q Langs\pl
@@ -576,8 +332,10 @@
rd /s /q Langs\tr
rd /s /q Langs\ca-Es
move en Langs
+ move es Langs
move fa Langs
move fr Langs
+ move ja Langs
move ko-KR Langs
move pt-BR Langs
move pl Langs
@@ -585,10 +343,6 @@
move tr Langs
move ca-Es Langs
- Copyright © HandyOrg 2018-2021
- 3.1.0.0
- 3.1.0.0
- 3.1.0.0
- https://github.com/HandyOrg/HandyControl
+ ..\..\Shared\HandyControlDemo_Shared\app.manifest
diff --git a/src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj b/src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj
index 5d2db9ee..6d7758bd 100644
--- a/src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj
+++ b/src/Net_40/HandyControl_Net_40/HandyControl_Net_40.csproj
@@ -3,18 +3,15 @@
HandyControl
HandyControl
net40
- Contains some commonly used simple WPF controls
+ Contains some simple and commonly used WPF controls
HandyControl
- true
snupkg
0067;0649;1591;0108;1717
- true
..\..\Shared\HandyControl_Shared\key.snk
- Copyright © HandyOrg 2018-2021
- 3.1.0.0
- 3.1.0.0
- 3.1.0.0
- https://github.com/HandyOrg/HandyControl
+ true
+ WPF C# Control
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ git
true
@@ -41,8 +38,14 @@
Properties\Langs\Lang.ca-ES.resx
+
+ Properties\Langs\Lang.cs.resx
+
Properties\Langs\Lang.en.resx
+
+
+ Properties\Langs\Lang.es.resx
Properties\Langs\Lang.fa.resx
@@ -50,6 +53,9 @@
Properties\Langs\Lang.fr.resx
+
+ Properties\Langs\Lang.ja.resx
+
Properties\Langs\Lang.ko-KR.resx
@@ -80,6 +86,9 @@
+
+
+
Resources\dropper.cur
@@ -192,6 +201,10 @@
Designer
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
Designer
MSBuild:Compile
diff --git a/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/CheckComboBoxBaseStyle.xaml b/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/CheckComboBoxBaseStyle.xaml
index 55458778..b734888c 100644
--- a/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/CheckComboBoxBaseStyle.xaml
+++ b/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/CheckComboBoxBaseStyle.xaml
@@ -2,37 +2,30 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:hc="clr-namespace:HandyControl.Controls"
xmlns:ex="clr-namespace:HandyControl.Tools.Extension"
- xmlns:themes="clr-namespace:HandyControl.Themes"
xmlns:system="clr-namespace:System;assembly=mscorlib"
xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
xmlns:langs="clr-namespace:HandyControl.Properties.Langs">
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
-
+
-
+
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
+
diff --git a/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/ComboBoxBaseStyle.xaml b/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/ComboBoxBaseStyle.xaml
index 805422ab..171b3185 100644
--- a/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/ComboBoxBaseStyle.xaml
+++ b/src/Net_40/HandyControl_Net_40/Themes/Styles/Base/ComboBoxBaseStyle.xaml
@@ -1,119 +1,58 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:system="clr-namespace:System;assembly=mscorlib">
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
+
-
+
@@ -137,48 +76,60 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
+
@@ -190,71 +141,84 @@
-
-
+
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
@@ -272,7 +236,7 @@
-
+
@@ -280,48 +244,53 @@
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
-
-
-
+
-
+
@@ -337,56 +306,64 @@
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
-
+
@@ -395,75 +372,80 @@
-
-
+
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
+
-
+
-
-
+
@@ -476,11 +458,11 @@
-
+
-
+
@@ -505,23 +487,14 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Net_40/HandyControl_Net_40/Themes/Styles/ListView.xaml b/src/Net_40/HandyControl_Net_40/Themes/Styles/ListView.xaml
index 195d2519..1d4bf6c4 100644
--- a/src/Net_40/HandyControl_Net_40/Themes/Styles/ListView.xaml
+++ b/src/Net_40/HandyControl_Net_40/Themes/Styles/ListView.xaml
@@ -1,169 +1,116 @@
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Net_40/HandyControl_Net_40/Themes/Styles/MessageBox.xaml b/src/Net_40/HandyControl_Net_40/Themes/Styles/MessageBox.xaml
index 2cf24acd..d4ad5f9a 100644
--- a/src/Net_40/HandyControl_Net_40/Themes/Styles/MessageBox.xaml
+++ b/src/Net_40/HandyControl_Net_40/Themes/Styles/MessageBox.xaml
@@ -2,12 +2,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:hc="clr-namespace:HandyControl.Controls"
xmlns:shell="clr-namespace:Microsoft.Windows.Shell"
- xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
- xmlns:themes="clr-namespace:HandyControl.Themes">
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
-
- 30
- 10,6
- 8,6
+ 28
+ 20
+ 10,5
+ 8,0
4
+ 30
@@ -402,7 +413,7 @@
-
+
@@ -453,6 +464,7 @@
+
@@ -691,28 +752,15 @@
-
-
-
-
-
-
+
+
+
+
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -1159,6 +1208,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
@@ -1422,27 +1510,19 @@
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
+
@@ -1524,27 +1604,19 @@
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
+
@@ -1593,7 +1665,7 @@
-
+
-
+
@@ -2710,35 +2925,36 @@
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
+
@@ -2771,6 +2987,7 @@
+
@@ -2780,20 +2997,56 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
+
-
+
@@ -4567,48 +5210,60 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
+
@@ -4620,56 +5275,70 @@
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
+
@@ -4681,8 +5350,7 @@
-
-
+
@@ -4698,54 +5366,59 @@
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
-
-
-
+
-
+
@@ -4759,56 +5432,64 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
-
+
@@ -4817,63 +5498,69 @@
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
+
@@ -4882,8 +5569,7 @@
-
-
+
@@ -4898,7 +5584,7 @@
-
+
@@ -4921,23 +5607,14 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
+
@@ -5046,15 +5727,15 @@
-
-
+
+
-
+
@@ -5064,76 +5745,73 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
+
@@ -5147,15 +5825,15 @@
-
-
+
+
-
+
@@ -5165,86 +5843,72 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
+
@@ -5252,112 +5916,93 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5365,27 +6010,20 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
-
-
-
-
-
-
-
+
@@ -5393,118 +6031,93 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
+
@@ -5512,109 +6125,93 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5622,27 +6219,20 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
-
-
-
-
-
-
-
+
@@ -5650,53 +6240,29 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -5743,17 +6309,19 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -6201,19 +6724,20 @@
-
+
+
-
+
-
+
-
+
-
+
@@ -6232,25 +6756,25 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
@@ -6266,25 +6790,25 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
@@ -6308,124 +6832,88 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -6441,17 +6929,89 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -6705,8 +7265,7 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -6897,59 +7459,67 @@
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -6961,8 +7531,7 @@
-
-
+
@@ -6979,66 +7548,64 @@
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -7052,15 +7619,15 @@
-
-
+
+
-
+
@@ -7070,79 +7637,70 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -7156,15 +7714,15 @@
-
-
+
+
-
+
@@ -7174,18 +7732,8 @@
-
-
-
-
-
-
-
-
-
-
-
+
@@ -7324,9 +7872,9 @@
-
+
-
+
@@ -7376,13 +7924,18 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -8107,10 +8563,11 @@
+
-
+
@@ -8131,7 +8588,7 @@
-
+
@@ -8193,16 +8650,20 @@
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -9150,28 +9630,20 @@
-
-
-
-
-
-
-
-
-
@@ -9310,16 +9774,15 @@
-
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -9334,33 +9797,16 @@
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
@@ -9368,16 +9814,15 @@
-
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -9392,37 +9837,20 @@
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
@@ -10164,7 +10584,7 @@
-
+
@@ -10191,7 +10611,7 @@
-
+
@@ -10200,7 +10620,7 @@
-
+
@@ -10209,7 +10629,7 @@
-
+
@@ -10218,7 +10638,7 @@
-
+
@@ -10228,35 +10648,32 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -10717,78 +11261,40 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
@@ -10802,27 +11308,25 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
@@ -10837,8 +11341,8 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -11111,38 +12025,41 @@
-
+
+
+
+
+
+
-
+
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -11702,7 +12541,7 @@
-
+
@@ -11725,13 +12564,13 @@
-
+
@@ -519,15 +260,24 @@
Properties\Langs\Lang.ca-ES.resx
+
+ Properties\Langs\Lang.cs.resx
+
Properties\Langs\Lang.en.resx
+
+ Properties\Langs\Lang.es.resx
+
Properties\Langs\Lang.fa.resx
Properties\Langs\Lang.fr.resx
+
+ Properties\Langs\Lang.ja.resx
+
Properties\Langs\Lang.ko-KR.resx
@@ -573,8 +323,10 @@
if not exist Langs md Langs
rd /s /q Langs\en
+ rd /s /q Langs\es
rd /s /q Langs\fa
rd /s /q Langs\fr
+ rd /s /q Langs\ja
rd /s /q Langs\ko-KR
rd /s /q Langs\pt-BR
rd /s /q Langs\pl
@@ -582,8 +334,10 @@
rd /s /q Langs\tr
rd /s /q Langs\ca-Es
move en Langs
+ move es Langs
move fa Langs
move fr Langs
+ move ja Langs
move ko-KR Langs
move pt-BR Langs
move pl Langs
diff --git a/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj b/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj
index 19af23cc..94913857 100644
--- a/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj
+++ b/src/Net_GE45/HandyControl_Net_GE45/HandyControl_Net_GE45.csproj
@@ -2,20 +2,17 @@
HandyControl
HandyControl
- netcoreapp3.0;netcoreapp3.1;net45;net462;net47;net48;net5.0-windows
- Contains some commonly used simple WPF controls
+ netcoreapp3.0;netcoreapp3.1;net45;net451;net452;net46;net461;net462;net47;net471;net472;net48;net481;net5.0-windows;net6.0-windows;net7.0-windows
+ Contains some simple and commonly used WPF controls
HandyControl
- true
snupkg
- 0067;0649;1591;MSB3061;SYSLIB0003;SYSLIB0004
+ 0067;0649;1591;MSB3061;SYSLIB0003;SYSLIB0004;SYSLIB0032
NETSDK1138
- true
..\..\Shared\HandyControl_Shared\key.snk
- Copyright © HandyOrg 2018-2021
- 3.1.0.0
- 3.1.0.0
- 3.1.0.0
- https://github.com/HandyOrg/HandyControl
+ true
+ WPF C# Control
+ Changes are detailed at https://github.com/HandyOrg/HandyControl/releases
+ git
true
@@ -42,8 +39,14 @@
Properties\Langs\Lang.ca-ES.resx
+
+ Properties\Langs\Lang.cs.resx
+
Properties\Langs\Lang.en.resx
+
+
+ Properties\Langs\Lang.es.resx
Properties\Langs\Lang.fa.resx
@@ -51,6 +54,9 @@
Properties\Langs\Lang.fr.resx
+
+ Properties\Langs\Lang.ja.resx
+
Properties\Langs\Lang.ko-KR.resx
@@ -80,6 +86,15 @@
+
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
Resources\dropper.cur
diff --git a/src/Shared/HandyControlDemo_Code/HandyControlDemo_Code.csproj b/src/Shared/HandyControlDemo_Code/HandyControlDemo_Code.csproj
index f0213599..ee7c6d25 100644
--- a/src/Shared/HandyControlDemo_Code/HandyControlDemo_Code.csproj
+++ b/src/Shared/HandyControlDemo_Code/HandyControlDemo_Code.csproj
@@ -3,15 +3,16 @@
true
HandyControlDemoCode
HandyControlDemoCode
- netcoreapp3.0;netcoreapp3.1;net40;net45;net462;net47;net48;net5.0-windows
+ netcoreapp3.0;netcoreapp3.1;net40;net45;net451;net452;net46;net461;net462;net47;net471;net472;net48;net481;net5.0-windows;net6.0-windows;net7.0-windows
MSB3026;MSB3061
NETSDK1138
- 3.1.0.0
- Copyright © HandyOrg 2018-2021
- https://github.com/HandyOrg/HandyControl
- 3.1.0.0
- 3.1.0.0
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
Window\AboutWindow.xaml
@@ -61,6 +62,9 @@
UserControl\Controls\AnimationPathDemoCtl.xaml
+
+ UserControl\Controls\AutoCompleteTextBoxDemoCtl.xaml
+
UserControl\Controls\BadgeDemoCtl.xaml
@@ -118,6 +122,9 @@
UserControl\Controls\DrawerDemoCtl.xaml
+
+ UserControl\Controls\ElementGroupDemoCtl.xaml
+
UserControl\Controls\FlexPanelDemoCtl.xaml
@@ -259,6 +266,9 @@
UserControl\Controls\WaterfallPanelDemoCtl.xaml
+
+ UserControl\Controls\WatermarkDemoCtl.xaml
+
UserControl\Controls\WindowDemoCtl.xaml
@@ -433,6 +443,10 @@
UserControl\Controls\AnimationPathDemoCtl.xaml.cs
AnimationPathDemoCtl.xaml
+
+ UserControl\Controls\AutoCompleteTextBoxDemoCtl.xaml.cs
+ AutoCompleteTextBoxDemoCtl.xaml
+
UserControl\Controls\BadgeDemoCtl.xaml.cs
BadgeDemoCtl.xaml
@@ -509,6 +523,10 @@
UserControl\Controls\DrawerDemoCtl.xaml.cs
DrawerDemoCtl.xaml
+
+ UserControl\Controls\ElementGroupDemoCtl.xaml.cs
+ ElementGroupDemoCtl.xaml
+
UserControl\Controls\FlexPanelDemoCtl.xaml.cs
FlexPanelDemoCtl.xaml
@@ -693,6 +711,10 @@
UserControl\Controls\UniformSpacingPanelDemoCtl.xaml.cs
UniformSpacingPanelDemoCtl.xaml
+
+ UserControl\Controls\WatermarkDemoCtl.xaml.cs
+ WatermarkDemoCtl.xaml
+
UserControl\Controls\WaterfallPanelDemoCtl.xaml.cs
WaterfallPanelDemoCtl.xaml
@@ -845,8 +867,11 @@
ViewModel\InteractiveDialogViewModel.cs
-
- ViewModel\ComboBoxDemoViewModel.cs
+
+ ViewModel\InputElementDemoViewModel.cs
+
+
+ ViewModel\AutoCompleteTextBoxDemoViewModel.cs
ViewModel\BadgeDemoViewModel.cs
@@ -875,9 +900,6 @@
ViewModel\PaginationDemoViewModel.cs
-
- ViewModel\SearchBarDemoViewModel.cs
-
ViewModel\SideMenuDemoViewModel.cs
@@ -899,8 +921,8 @@
ViewModel\WindowDemoViewModel.cs
-
- ViewModel\DemoViewModelBase!1.cs
+
+ ViewModel\DemoViewModelBase`1.cs
ViewModel\ItemsDisplayViewModel.cs
diff --git a/src/Shared/HandyControlDemo_Shared/App.xaml.cs b/src/Shared/HandyControlDemo_Shared/App.xaml.cs
index 0dd38bb4..54db7684 100644
--- a/src/Shared/HandyControlDemo_Shared/App.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/App.xaml.cs
@@ -15,124 +15,123 @@ using HandyControlDemo.Data;
using HandyControlDemo.Properties.Langs;
using HandyControlDemo.Tools;
-namespace HandyControlDemo
+namespace HandyControlDemo;
+
+public partial class App
{
- public partial class App
- {
#pragma warning disable IDE0052
- [SuppressMessage("ReSharper", "NotAccessedField.Local")]
- private static Mutex AppMutex;
+ [SuppressMessage("ReSharper", "NotAccessedField.Local")]
+ private static Mutex AppMutex;
#pragma warning restore IDE0052
- public App()
- {
+ public App()
+ {
#if !NET40
- var cachePath = $"{AppDomain.CurrentDomain.BaseDirectory}Cache";
- if (!Directory.Exists(cachePath))
- {
- Directory.CreateDirectory(cachePath);
- }
- ProfileOptimization.SetProfileRoot(cachePath);
- ProfileOptimization.StartProfile("Profile");
-#endif
- }
-
- protected override void OnStartup(StartupEventArgs e)
+ var cachePath = $"{AppDomain.CurrentDomain.BaseDirectory}Cache";
+ if (!Directory.Exists(cachePath))
{
- AppMutex = new Mutex(true, "HandyControlDemo", out var createdNew);
+ Directory.CreateDirectory(cachePath);
+ }
+ ProfileOptimization.SetProfileRoot(cachePath);
+ ProfileOptimization.StartProfile("Profile");
+#endif
+ }
- if (!createdNew)
+ protected override void OnStartup(StartupEventArgs e)
+ {
+ AppMutex = new Mutex(true, "HandyControlDemo", out var createdNew);
+
+ if (!createdNew)
+ {
+ var current = Process.GetCurrentProcess();
+
+ foreach (var process in Process.GetProcessesByName(current.ProcessName))
{
- var current = Process.GetCurrentProcess();
-
- foreach (var process in Process.GetProcessesByName(current.ProcessName))
+ if (process.Id != current.Id)
{
- if (process.Id != current.Id)
- {
- Win32Helper.SetForegroundWindow(process.MainWindowHandle);
- break;
- }
+ Win32Helper.SetForegroundWindow(process.MainWindowHandle);
+ break;
}
- Shutdown();
}
- else
+ Shutdown();
+ }
+ else
+ {
+ var splashScreen = new SplashScreen("Resources/Img/Cover.png");
+ splashScreen.Show(true);
+
+ base.OnStartup(e);
+
+ UpdateRegistry();
+
+ ShutdownMode = ShutdownMode.OnMainWindowClose;
+ GlobalData.Init();
+ ConfigHelper.Instance.SetLang(GlobalData.Config.Lang);
+ LangProvider.Culture = new CultureInfo(GlobalData.Config.Lang);
+
+ if (GlobalData.Config.Skin != SkinType.Default)
{
- var splashScreen = new SplashScreen("Resources/Img/Cover.png");
- splashScreen.Show(true);
+ UpdateSkin(GlobalData.Config.Skin);
+ }
- base.OnStartup(e);
-
- UpdateRegistry();
-
- ShutdownMode = ShutdownMode.OnMainWindowClose;
- GlobalData.Init();
- ConfigHelper.Instance.SetLang(GlobalData.Config.Lang);
- LangProvider.Culture = new CultureInfo(GlobalData.Config.Lang);
-
- if (GlobalData.Config.Skin != SkinType.Default)
- {
- UpdateSkin(GlobalData.Config.Skin);
- }
-
- ConfigHelper.Instance.SetWindowDefaultStyle();
- ConfigHelper.Instance.SetNavigationWindowDefaultStyle();
+ ConfigHelper.Instance.SetWindowDefaultStyle();
+ ConfigHelper.Instance.SetNavigationWindowDefaultStyle();
#if NET40
- ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
+ ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
#else
- ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
#endif
- }
}
+ }
- protected override void OnExit(ExitEventArgs e)
+ protected override void OnExit(ExitEventArgs e)
+ {
+ base.OnExit(e);
+ GlobalData.Save();
+ }
+
+ internal void UpdateSkin(SkinType skin)
+ {
+ var skins0 = Resources.MergedDictionaries[0];
+ skins0.MergedDictionaries.Clear();
+ skins0.MergedDictionaries.Add(ResourceHelper.GetSkin(skin));
+ skins0.MergedDictionaries.Add(ResourceHelper.GetSkin(typeof(App).Assembly, "Resources/Themes", skin));
+
+ var skins1 = Resources.MergedDictionaries[1];
+ skins1.MergedDictionaries.Clear();
+ skins1.MergedDictionaries.Add(new ResourceDictionary
{
- base.OnExit(e);
- GlobalData.Save();
- }
-
- internal void UpdateSkin(SkinType skin)
+ Source = new Uri("pack://application:,,,/HandyControl;component/Themes/Theme.xaml")
+ });
+ skins1.MergedDictionaries.Add(new ResourceDictionary
{
- var skins0 = Resources.MergedDictionaries[0];
- skins0.MergedDictionaries.Clear();
- skins0.MergedDictionaries.Add(ResourceHelper.GetSkin(skin));
- skins0.MergedDictionaries.Add(ResourceHelper.GetSkin(typeof(App).Assembly, "Resources/Themes", skin));
+ Source = new Uri("pack://application:,,,/HandyControlDemo;component/Resources/Themes/Theme.xaml")
+ });
- var skins1 = Resources.MergedDictionaries[1];
- skins1.MergedDictionaries.Clear();
- skins1.MergedDictionaries.Add(new ResourceDictionary
- {
- Source = new Uri("pack://application:,,,/HandyControl;component/Themes/Theme.xaml")
- });
- skins1.MergedDictionaries.Add(new ResourceDictionary
- {
- Source = new Uri("pack://application:,,,/HandyControlDemo;component/Resources/Themes/Theme.xaml")
- });
+ Current.MainWindow?.OnApplyTemplate();
+ }
- Current.MainWindow?.OnApplyTemplate();
- }
-
- private void UpdateRegistry()
+ private void UpdateRegistry()
+ {
+ var processModule = Process.GetCurrentProcess().MainModule;
+ if (processModule != null)
{
- var processModule = Process.GetCurrentProcess().MainModule;
- if (processModule != null)
+ var registryFilePath = $"{Path.GetDirectoryName(processModule.FileName)}\\Registry.reg";
+ if (!File.Exists(registryFilePath))
{
- var registryFilePath = $"{Path.GetDirectoryName(processModule.FileName)}\\Registry.reg";
- if (!File.Exists(registryFilePath))
+ var streamResourceInfo = GetResourceStream(new Uri("pack://application:,,,/Resources/Registry.txt"));
+ if (streamResourceInfo != null)
{
- var streamResourceInfo = GetResourceStream(new Uri("pack://application:,,,/Resources/Registry.txt"));
- if (streamResourceInfo != null)
+ using var reader = new StreamReader(streamResourceInfo.Stream);
+ var registryStr = reader.ReadToEnd();
+ var newRegistryStr = registryStr.Replace("#", processModule.FileName.Replace("\\", "\\\\"));
+ File.WriteAllText(registryFilePath, newRegistryStr);
+ Process.Start(new ProcessStartInfo("cmd", $"/c {registryFilePath}")
{
- using var reader = new StreamReader(streamResourceInfo.Stream);
- var registryStr = reader.ReadToEnd();
- var newRegistryStr = registryStr.Replace("#", processModule.FileName.Replace("\\", "\\\\"));
- File.WriteAllText(registryFilePath, newRegistryStr);
- Process.Start(new ProcessStartInfo("cmd", $"/c {registryFilePath}")
- {
- UseShellExecute = false,
- CreateNoWindow = true
- });
- }
+ UseShellExecute = false,
+ CreateNoWindow = true
+ });
}
}
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/AppConfig.cs b/src/Shared/HandyControlDemo_Shared/Data/AppConfig.cs
index 5162608b..9f565c7d 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/AppConfig.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/AppConfig.cs
@@ -1,14 +1,13 @@
using System;
using HandyControl.Data;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+internal class AppConfig
{
- internal class AppConfig
- {
- public static readonly string SavePath = $"{AppDomain.CurrentDomain.BaseDirectory}AppConfig.json";
+ public static readonly string SavePath = $"{AppDomain.CurrentDomain.BaseDirectory}AppConfig.json";
- public string Lang { get; set; } = "zh-cn";
+ public string Lang { get; set; } = "zh-cn";
- public SkinType Skin { get; set; }
- }
+ public SkinType Skin { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json b/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json
index 97874f39..c14eec8a 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json
+++ b/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json
@@ -4,37 +4,37 @@
"selectedIndex": -1,
"group": false,
"demoItemList": [
- [ "Brush", "BrushDemoCtl", "Brush_16x", "", "" ],
- [ "Button", "ButtonDemoCtl", "ButtonClick_16x", "", "" ],
- [ "RepeatButton", "RepeatButtonDemoCtl", "RepeatButton_16x", "", "" ],
- [ "ToggleButton", "ToggleButtonDemoCtl", "Toggle_16x", "", "" ],
- [ "RadioButton", "RadioButtonDemoCtl", "RadioButton_16x", "", "" ],
- [ "CheckBox", "CheckBoxDemoCtl", "CheckBox_16x", "", "" ],
- [ "ScrollViewer", "NativeScrollViewerDemoCtl", "ScrollBox_16x", "", "" ],
- [ "Slider", "SliderDemoCtl", "Slider_16x", "", "" ],
- [ "TextBlock", "TextBlockDemoCtl", "TextBlock_16x", "", "" ],
- [ "TextBox", "NativeTextBoxDemoCtl", "TextBox_16x", "", "" ],
- [ "ComboBox", "NativeComboBoxDemoCtl", "ComboBox_16x", "", "" ],
- [ "PasswordBox", "NativePasswordBoxDemoCtl", "PasswordBox_16x", "", "" ],
- [ "Expander", "ExpanderDemoCtl", "Expander_16x", "", "" ],
- [ "ProgressBar", "NativeProgressBarDemoCtl", "ProgressBar_16x", "", "" ],
- [ "Calendar", "CalendarDemoCtl", "Calendar_16x", "", "" ],
- [ "DatePicker", "NativeDatePickerDemoCtl", "DatePicker_16x", "", "" ],
- [ "TabControl", "NativeTabControlDemoCtl", "TabPage_16x", "", "" ],
- [ "DataGrid", "DataGridDemoCtl", "DataGrid_16x", "", "" ],
- [ "TreeView", "TreeViewDemoCtl", "TreeView_16x", "", "" ],
- [ "ListBox", "ListBoxDemoCtl", "ListBox_16x", "", "" ],
- [ "ListView", "ListViewDemoCtl", "ListView_16x", "", "" ],
- [ "GroupBox", "GroupBoxDemoCtl", "GroupBox_16x", "", "" ],
- [ "Menu", "MenuDemoCtl", "ContextMenu_16x", "", "" ],
- [ "RichTextBox", "RichTextBoxDemoCtl", "RichTextBox_16x", "", "" ],
- [ "FlowDocument", "FlowDocumentDemoCtl", "WPFFlowDocument_16x", "", "" ],
- [ "ToolBar", "ToolBarDemoCtl", "ToolBar_16x", "", "" ],
- [ "Border", "BorderDemoCtl", "BorderElement_16x", "", "" ],
- [ "Label", "LabelDemoCtl", "Label_16x", "", "" ],
- [ "Frame", "FrameDemoCtl", "frame_16xLG", "", "" ],
- [ "Window", "NativeWindowDemoCtl", "WindowsForm_16x", "", "" ],
- [ "Geometry", "GeometryDemoCtl", "Path_16x", "1", "" ]
+ [ "Brush", "BrushDemoCtl", "Brush.Brush", "", "" ],
+ [ "Button", "ButtonDemoCtl", "Brush.ButtonClick", "", "" ],
+ [ "RepeatButton", "RepeatButtonDemoCtl", "Brush.RepeatButton", "", "" ],
+ [ "ToggleButton", "ToggleButtonDemoCtl", "Brush.Toggle", "", "" ],
+ [ "RadioButton", "RadioButtonDemoCtl", "Brush.RadioButton", "", "" ],
+ [ "CheckBox", "CheckBoxDemoCtl", "Brush.CheckBoxChecked", "", "" ],
+ [ "ScrollViewer", "NativeScrollViewerDemoCtl", "Brush.ScrollBox", "", "" ],
+ [ "Slider", "SliderDemoCtl", "Brush.Slider", "", "" ],
+ [ "TextBlock", "TextBlockDemoCtl", "Brush.TextBlock", "", "" ],
+ [ "TextBox", "NativeTextBoxDemoCtl", "Brush.TextBox", "", "" ],
+ [ "ComboBox", "NativeComboBoxDemoCtl", "Brush.ComboBox", "", "" ],
+ [ "PasswordBox", "NativePasswordBoxDemoCtl", "Brush.PasswordBox", "", "" ],
+ [ "Expander", "ExpanderDemoCtl", "Brush.Expander", "", "" ],
+ [ "ProgressBar", "NativeProgressBarDemoCtl", "Brush.ProgressBar", "", "" ],
+ [ "Calendar", "CalendarDemoCtl", "Brush.Calendar", "", "" ],
+ [ "DatePicker", "NativeDatePickerDemoCtl", "Brush.DateTimePicker", "", "" ],
+ [ "TabControl", "NativeTabControlDemoCtl", "Brush.TabPage", "", "" ],
+ [ "DataGrid", "DataGridDemoCtl", "Brush.DataGrid", "", "" ],
+ [ "TreeView", "TreeViewDemoCtl", "Brush.TreeView", "", "" ],
+ [ "ListBox", "ListBoxDemoCtl", "Brush.ListBox", "", "" ],
+ [ "ListView", "ListViewDemoCtl", "Brush.ListView", "", "" ],
+ [ "GroupBox", "GroupBoxDemoCtl", "Brush.GroupBox", "", "" ],
+ [ "Menu", "MenuDemoCtl", "Brush.ContextMenu", "", "" ],
+ [ "RichTextBox", "RichTextBoxDemoCtl", "Brush.RichTextBox", "", "" ],
+ [ "FlowDocument", "FlowDocumentDemoCtl", "Brush.WPFFlowDocument", "", "" ],
+ [ "ToolBar", "ToolBarDemoCtl", "Brush.ToolBar", "", "" ],
+ [ "Border", "BorderDemoCtl", "Brush.BorderElement", "", "" ],
+ [ "Label", "LabelDemoCtl", "Brush.Label", "", "" ],
+ [ "Frame", "FrameDemoCtl", "Brush.FrameBorder", "", "" ],
+ [ "Window", "NativeWindowDemoCtl", "Brush.WindowsForm", "", "" ],
+ [ "Geometry", "GeometryDemoCtl", "Brush.Path", "", "" ]
]
},
{
@@ -42,74 +42,77 @@
"selectedIndex": 0,
"group": true,
"demoItemList": [
- [ "FloatingBlock", "FloatingBlockDemoCtl", "thumbs_up", "", "Interacting" ],
- [ "PropertyGrid", "PropertyGridDemoCtl", "PropertyGridEditorPart_16x", "1", "DataEntry" ],
- [ "ImageSelector", "ImageSelectorDemoCtl", "Image_16x", "1", "DataEntry" ],
- [ "ImageBlock", "ImageBlockDemoCtl", "ImageStack_16x", "", "DataDisplay" ],
- [ "Magnifier", "MagnifierDemoCtl", "Search_16x", "", "Interacting" ],
- [ "Gravatar", "GravatarDemoCtl", "User_16x", "", "DataDisplay" ],
- [ "Badge", "BadgeDemoCtl", "DotLarge_16x", "", "DataDisplay" ],
- [ "SplitButton", "SplitButtonDemoCtl", "SplitButton_16x", "", "Button" ],
- [ "ButtonGroup", "ButtonGroupDemoCtl", "ButtonGroup_16x", "", "Button" ],
- [ "ProgressButton", "ProgressButtonDemoCtl", "ProgressButton_16x", "", "Button" ],
- [ "Poptip", "PoptipDemoCtl", "PopupCursor_16x", "", "DataDisplay" ],
- [ "NumericUpDown", "NumericUpDownDemoCtl", "NumericListBox_16x", "", "DataEntry" ],
- [ "TextBox", "TextBoxDemoCtl", "TextBox_16x", "", "DataEntry" ],
- [ "ComboBox", "ComboBoxDemoCtl", "ComboBox_16x", "", "DataEntry" ],
- [ "CheckComboBox", "CheckComboBoxDemoCtl", "CheckBoxList_16x", "1", "DataEntry" ],
- [ "PasswordBox", "PasswordBoxDemoCtl", "PasswordBox_16x", "", "DataEntry" ],
- [ "PinBox", "PinBoxDemoCtl", "Ellipsis_16x", "", "DataEntry" ],
- [ "DatePicker", "DatePickerDemoCtl", "DatePicker_16x", "", "DataEntry" ],
- [ "Clock", "ClockDemoCtl", "Time_color_16x", "", "DataEntry" ],
- [ "TimePicker", "TimePickerDemoCtl", "TimePicker_16x", "", "DataEntry" ],
- [ "CalendarWithClock", "CalendarWithClockDemoCtl", "Calendar_16x", "", "DataEntry" ],
- [ "DateTimePicker", "DateTimePickerDemoCtl", "DatePicker_16x", "", "DataEntry" ],
- [ "Transfer", "TransferDemoCtl", "Transfer_16x", "", "DataEntry" ],
- [ "FlipClock", "FlipClockDemoCtl", "FlipVertical_16x", "", "DataDisplay" ],
- [ "Rate", "RateDemoCtl", "Star", "", "DataEntry" ],
- [ "Shield", "ShieldDemoCtl", "Shield_16x", "", "DataDisplay" ],
- [ "SearchBar", "SearchBarDemoCtl", "Search_16x", "", "DataEntry" ],
- [ "Tag", "TagDemoCtl", "Tag_16x", "", "DataDisplay" ],
- [ "GifImage", "GifImageDemoCtl", "Animation_16x", "", "DataDisplay" ],
- [ "OutlineText", "OutlineTextDemoCtl", "TextBlock_16x", "", "DataDisplay" ],
- [ "RunningBlock", "RunningBlockDemoCtl", "Dynamic_16x", "", "DataDisplay" ],
- [ "Card", "CardDemoCtl", "VSO_Card_16x", "", "DataDisplay" ],
- [ "Divider", "DividerDemoCtl", "DottedSplitter_16x", "", "Layout" ],
- [ "CirclePanel", "CirclePanelDemoCtl", "ColorWheel_16x", "", "Layout" ],
- [ "Grid", "GridDemoCtl", "GridPane_16x", "", "Layout" ],
- [ "FlexPanel", "FlexPanelDemoCtl", "layout-FlexLayout-16", "1", "Layout" ],
- [ "UniformSpacingPanel", "UniformSpacingPanelDemoCtl", "IncreaseHorizontalSpacing_16x", "1", "Layout" ],
- [ "RelativePanel", "RelativePanelDemoCtl", "TransformRelative_16x", "", "Layout" ],
- [ "WaterfallPanel", "WaterfallPanelDemoCtl", "Panel_16x", "", "Layout" ],
- [ "HoneycombPanel", "HoneycombPanelDemoCtl", "PolygonHexagon_16x", "", "Layout" ],
- [ "TransitioningContentControl", "TransitioningContentControlDemoCtl", "TransitioningContentControl_16x", "", "Interacting" ],
- [ "Drawer", "DrawerDemoCtl", "View_Portrait_16x", "", "Feedback" ],
- [ "CoverView", "CoverViewDemoCtl", "DetailDataView_16x", "", "DataDisplay" ],
- [ "CoverFlow", "CoverFlowDemoCtl", "LinearCarousel_16x", "", "DataDisplay" ],
- [ "ProgressBar", "ProgressBarDemoCtl", "ProgressBar_16x", "", "Feedback" ],
- [ "StepBar", "StepBarDemoCtl", "Flow_16x", "", "Navigation" ],
- [ "Growl", "GrowlDemoCtl", "Message_16x", "", "Feedback" ],
- [ "Loading", "LoadingDemoCtl", "Loading_Blue_16x", "", "Feedback" ],
- [ "ColorPicker", "ColorPickerDemoCtl", "ColorPalette_16x", "", "DataEntry" ],
- [ "Carousel", "CarouselDemoCtl", "Carousel_16x", "", "DataDisplay" ],
- [ "CompareSlider", "CompareSliderDemoCtl", "SplitterControl_16x", "", "Interacting" ],
- [ "PreviewSlider", "PreviewSliderDemoCtl", "HoverMenu_16x", "", "DataEntry" ],
- [ "RangeSlider", "RangeSliderDemoCtl", "brackets_Square_16xLG", "", "DataEntry" ],
- [ "TimeBar", "TimeBarDemoCtl", "Timeline_16x", "", "DataEntry" ],
- [ "Pagination", "PaginationDemoCtl", "Paginator_16x", "", "Navigation" ],
- [ "TabControl", "TabControlDemoCtl", "TabPage_16x", "", "DataDisplay" ],
- [ "SideMenu", "SideMenuDemoCtl", "MainMenuControl_16x", "", "Navigation" ],
- [ "Notification", "NotificationDemoCtl", "Procedure_16x", "", "Feedback" ],
- [ "Dialog", "DialogDemoCtl", "Dialog_16x", "", "Feedback" ],
- [ "Screenshot", "ScreenshotDemoCtl", "WindowScreenshot_16x", "", "" ],
- [ "GotoTop", "GotoTopDemoCtl", "GoToTop_16x", "", "" ],
- [ "ChatBubble", "ChatBubbleDemoCtl", "Bubble_16xLG", "", "" ],
- [ "NotifyIcon", "NotifyIconDemoCtl", "NotificationHub_16x", "", "" ],
- [ "ImageBrowser", "ImageBrowserDemoCtl", "ImageBrowser_16x", "", "" ],
- [ "AnimationPath", "AnimationPathDemoCtl", "Path_16x", "", "" ],
- [ "ScrollViewer", "ScrollViewerDemoCtl", "ScrollBox_16x", "", "" ],
- [ "Sprite", "SpriteDemoCtl", "HandyControl", "", "" ],
- [ "Window", "WindowDemoCtl", "WindowsForm_16x", "", "" ]
+ [ "FloatingBlock", "FloatingBlockDemoCtl", "Brush.LikeFilled", "", "Interacting" ],
+ [ "PropertyGrid", "PropertyGridDemoCtl", "Brush.PropertyGridEditorPart", "", "DataEntry" ],
+ [ "ImageSelector", "ImageSelectorDemoCtl", "Brush.Image", "", "DataEntry" ],
+ [ "ImageBlock", "ImageBlockDemoCtl", "Brush.ImageStack", "", "DataDisplay" ],
+ [ "Magnifier", "MagnifierDemoCtl", "Brush.Search", "", "Interacting" ],
+ [ "Gravatar", "GravatarDemoCtl", "Brush.User", "", "DataDisplay" ],
+ [ "Badge", "BadgeDemoCtl", "Brush.CheckDot", "", "DataDisplay" ],
+ [ "SplitButton", "SplitButtonDemoCtl", "Brush.SplitButton", "", "Button" ],
+ [ "ButtonGroup", "ButtonGroupDemoCtl", "Brush.ButtonGroup", "", "Button" ],
+ [ "ProgressButton", "ProgressButtonDemoCtl", "Brush.ProgressBarStatusBar8", "", "Button" ],
+ [ "Poptip", "PoptipDemoCtl", "Brush.ToolTip", "", "DataDisplay" ],
+ [ "NumericUpDown", "NumericUpDownDemoCtl", "Brush.NumericListBox", "", "DataEntry" ],
+ [ "TextBox", "TextBoxDemoCtl", "Brush.TextBox", "", "DataEntry" ],
+ [ "ComboBox", "ComboBoxDemoCtl", "Brush.ComboBox", "", "DataEntry" ],
+ [ "CheckComboBox", "CheckComboBoxDemoCtl", "Brush.CheckBoxList", "", "DataEntry" ],
+ [ "AutoCompleteTextBox", "AutoCompleteTextBoxDemoCtl", "Brush.AutoComplete", "1", "DataEntry" ],
+ [ "PasswordBox", "PasswordBoxDemoCtl", "Brush.PasswordBox", "", "DataEntry" ],
+ [ "PinBox", "PinBoxDemoCtl", "Brush.Ellipsis", "", "DataEntry" ],
+ [ "DatePicker", "DatePickerDemoCtl", "Brush.DateTimePicker", "", "DataEntry" ],
+ [ "Clock", "ClockDemoCtl", "Brush.Time", "", "DataEntry" ],
+ [ "TimePicker", "TimePickerDemoCtl", "Brush.TimePicker", "", "DataEntry" ],
+ [ "CalendarWithClock", "CalendarWithClockDemoCtl", "Brush.Calendar", "", "DataEntry" ],
+ [ "DateTimePicker", "DateTimePickerDemoCtl", "Brush.DateTimePicker", "", "DataEntry" ],
+ [ "Transfer", "TransferDemoCtl", "Brush.SyncArrow", "", "DataEntry" ],
+ [ "FlipClock", "FlipClockDemoCtl", "Brush.FlipVertical", "", "DataDisplay" ],
+ [ "Rate", "RateDemoCtl", "Brush.HeartFilled", "", "DataEntry" ],
+ [ "Shield", "ShieldDemoCtl", "Brush.SplitKeyValuePair", "", "DataDisplay" ],
+ [ "SearchBar", "SearchBarDemoCtl", "Brush.Search", "", "DataEntry" ],
+ [ "Tag", "TagDemoCtl", "Brush.Tag", "", "DataDisplay" ],
+ [ "GifImage", "GifImageDemoCtl", "Brush.Animation", "", "DataDisplay" ],
+ [ "OutlineText", "OutlineTextDemoCtl", "Brush.TextBlock", "", "DataDisplay" ],
+ [ "RunningBlock", "RunningBlockDemoCtl", "Brush.Dynamic", "", "DataDisplay" ],
+ [ "Card", "CardDemoCtl", "Brush.ContactCard", "", "DataDisplay" ],
+ [ "ElementGroup", "ElementGroupDemoCtl", "Brush.ButtonGroup", "1", "Layout" ],
+ [ "Divider", "DividerDemoCtl", "Brush.DottedSplitter", "", "Layout" ],
+ [ "CirclePanel", "CirclePanelDemoCtl", "Brush.ColorWheel", "", "Layout" ],
+ [ "Grid", "GridDemoCtl", "Brush.GridPane", "", "Layout" ],
+ [ "FlexPanel", "FlexPanelDemoCtl", "Brush.FlowLayoutPanel", "1", "Layout" ],
+ [ "UniformSpacingPanel", "UniformSpacingPanelDemoCtl", "Brush.IncreaseHorizontalSpacing", "1", "Layout" ],
+ [ "RelativePanel", "RelativePanelDemoCtl", "Brush.TransformRelative", "", "Layout" ],
+ [ "WaterfallPanel", "WaterfallPanelDemoCtl", "Brush.Panel", "", "Layout" ],
+ [ "HoneycombPanel", "HoneycombPanelDemoCtl", "Brush.PolygonHexagon", "", "Layout" ],
+ [ "TransitioningContentControl", "TransitioningContentControlDemoCtl", "Brush.TransitioningContentControl", "", "Interacting" ],
+ [ "Drawer", "DrawerDemoCtl", "Brush.TransactedReceiveScope", "", "Feedback" ],
+ [ "CoverView", "CoverViewDemoCtl", "Brush.DetailDataView", "", "DataDisplay" ],
+ [ "CoverFlow", "CoverFlowDemoCtl", "Brush.LinearCarousel", "", "DataDisplay" ],
+ [ "ProgressBar", "ProgressBarDemoCtl", "Brush.ProgressBar", "", "Feedback" ],
+ [ "StepBar", "StepBarDemoCtl", "Brush.Flow", "", "Navigation" ],
+ [ "Growl", "GrowlDemoCtl", "Brush.Message", "", "Feedback" ],
+ [ "Loading", "LoadingDemoCtl", "Brush.Loading", "", "Feedback" ],
+ [ "ColorPicker", "ColorPickerDemoCtl", "Brush.ColorPalette", "", "DataEntry" ],
+ [ "Carousel", "CarouselDemoCtl", "Brush.Carousel", "", "DataDisplay" ],
+ [ "CompareSlider", "CompareSliderDemoCtl", "Brush.SplitterControl", "", "Interacting" ],
+ [ "PreviewSlider", "PreviewSliderDemoCtl", "Brush.HoverMenu", "", "DataEntry" ],
+ [ "RangeSlider", "RangeSliderDemoCtl", "Brush.Indexer", "", "DataEntry" ],
+ [ "TimeBar", "TimeBarDemoCtl", "Brush.Timeline", "", "DataEntry" ],
+ [ "Pagination", "PaginationDemoCtl", "Brush.Paginator", "", "Navigation" ],
+ [ "TabControl", "TabControlDemoCtl", "Brush.TabPage", "", "DataDisplay" ],
+ [ "SideMenu", "SideMenuDemoCtl", "Brush.MainMenuControl", "", "Navigation" ],
+ [ "Notification", "NotificationDemoCtl", "Brush.Procedure", "", "Feedback" ],
+ [ "Dialog", "DialogDemoCtl", "Brush.Dialog", "", "Feedback" ],
+ [ "Screenshot", "ScreenshotDemoCtl", "Brush.WindowScreenshot", "", "" ],
+ [ "GotoTop", "GotoTopDemoCtl", "Brush.GoToTop", "", "" ],
+ [ "ChatBubble", "ChatBubbleDemoCtl", "Brush.FeedbackBubble", "", "" ],
+ [ "Watermark", "WatermarkDemoCtl", "Brush.GridLight", "1", "" ],
+ [ "NotifyIcon", "NotifyIconDemoCtl", "Brush.NotificationHub", "", "" ],
+ [ "ImageBrowser", "ImageBrowserDemoCtl", "Brush.ImageBrowser", "", "" ],
+ [ "AnimationPath", "AnimationPathDemoCtl", "Brush.Path", "", "" ],
+ [ "ScrollViewer", "ScrollViewerDemoCtl", "Brush.ScrollBox", "", "" ],
+ [ "Sprite", "SpriteDemoCtl", "Brush.HandyControl", "", "" ],
+ [ "Window", "WindowDemoCtl", "Brush.WindowsForm", "", "" ]
]
},
{
@@ -117,9 +120,9 @@
"selectedIndex": 0,
"group": false,
"demoItemList": [
- [ "HatchBrushGenerator", "HatchBrushGeneratorDemoCtl", "DataGenerator_16x", "", "" ],
- [ "Morphing_Animation", "GeometryAnimationDemoCtl", "Animation_16x", "", "" ],
- [ "Effects", "EffectsDemoCtl", "Effects_16x", "", "" ]
+ [ "HatchBrushGenerator", "HatchBrushGeneratorDemoCtl", "Brush.DataGenerator", "", "" ],
+ [ "Morphing_Animation", "GeometryAnimationDemoCtl", "Brush.Animation", "", "" ],
+ [ "Effects", "EffectsDemoCtl", "Brush.Effects", "", "" ]
]
}
]
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Enum/DemoType.cs b/src/Shared/HandyControlDemo_Shared/Data/Enum/DemoType.cs
index 1bc162c7..22fe300b 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Enum/DemoType.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Enum/DemoType.cs
@@ -1,13 +1,12 @@
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public enum DemoType
{
- public enum DemoType
- {
- Type1 = 1,
- Type2,
- Type3,
- Type4,
- Type5,
- Type6
- }
+ Type1 = 1,
+ Type2,
+ Type3,
+ Type4,
+ Type5,
+ Type6
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/GlobalData.cs b/src/Shared/HandyControlDemo_Shared/Data/GlobalData.cs
index d4c8af00..dd0d4e91 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/GlobalData.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/GlobalData.cs
@@ -1,38 +1,37 @@
using System.IO;
using Newtonsoft.Json;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+internal class GlobalData
{
- internal class GlobalData
+ public static void Init()
{
- public static void Init()
+ if (File.Exists(AppConfig.SavePath))
{
- if (File.Exists(AppConfig.SavePath))
+ try
{
- try
- {
- var json = File.ReadAllText(AppConfig.SavePath);
- Config = (string.IsNullOrEmpty(json) ? new AppConfig() : JsonConvert.DeserializeObject(json)) ?? new AppConfig();
- }
- catch
- {
- Config = new AppConfig();
- }
+ var json = File.ReadAllText(AppConfig.SavePath);
+ Config = (string.IsNullOrEmpty(json) ? new AppConfig() : JsonConvert.DeserializeObject(json)) ?? new AppConfig();
}
- else
+ catch
{
Config = new AppConfig();
}
}
-
- public static void Save()
+ else
{
- var json = JsonConvert.SerializeObject(Config);
- File.WriteAllText(AppConfig.SavePath, json);
+ Config = new AppConfig();
}
-
- public static AppConfig Config { get; set; }
-
- public static bool NotifyIconIsShow { get; set; }
}
+
+ public static void Save()
+ {
+ var json = JsonConvert.SerializeObject(Config);
+ File.WriteAllText(AppConfig.SavePath, json);
+ }
+
+ public static AppConfig Config { get; set; }
+
+ public static bool NotifyIconIsShow { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs
index 338898e1..6be766d0 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.cs
@@ -1,56 +1,57 @@
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class MessageToken
{
- public class MessageToken
- {
- public static readonly string LoadShowContent = nameof(LoadShowContent);
+ public static readonly string LoadShowContent = nameof(LoadShowContent);
- public static readonly string FullSwitch = nameof(FullSwitch);
+ public static readonly string FullSwitch = nameof(FullSwitch);
- public static readonly string ContributorsView = nameof(ContributorsView);
+ public static readonly string ContributorsView = nameof(ContributorsView);
- public static readonly string ClearLeftSelected = nameof(ClearLeftSelected);
+ public static readonly string ClearLeftSelected = nameof(ClearLeftSelected);
- public static readonly string SendChatMessage = nameof(SendChatMessage);
+ public static readonly string SendChatMessage = nameof(SendChatMessage);
- public static readonly string GrowlDemoPanel = nameof(GrowlDemoPanel);
+ public static readonly string GrowlDemoPanel = nameof(GrowlDemoPanel);
- public static readonly string DialogDemoWindow = nameof(DialogDemoWindow);
+ public static readonly string DialogDemoWindow = nameof(DialogDemoWindow);
- public static readonly string MainWindow = nameof(MainWindow);
+ public static readonly string MainWindow = nameof(MainWindow);
- public static readonly string PracticalDemo = nameof(PracticalDemo);
+ public static readonly string PracticalDemo = nameof(PracticalDemo);
- public static readonly string ProjectsView = nameof(ProjectsView);
+ public static readonly string ProjectsView = nameof(ProjectsView);
- public static readonly string BlogsView = nameof(BlogsView);
+ public static readonly string BlogsView = nameof(BlogsView);
- public static readonly string WebsitesView = nameof(WebsitesView);
+ public static readonly string WebsitesView = nameof(WebsitesView);
- public static readonly string NotifyIconDemo = nameof(NotifyIconDemo);
+ public static readonly string NotifyIconDemo = nameof(NotifyIconDemo);
- public static readonly string NotifyIconContextDemo = nameof(NotifyIconContextDemo);
+ public static readonly string NotifyIconContextDemo = nameof(NotifyIconContextDemo);
- public static readonly string CommonWindow = nameof(CommonWindow);
+ public static readonly string CommonWindow = nameof(CommonWindow);
- public static readonly string BlurWindow = nameof(BlurWindow);
+ public static readonly string BlurWindow = nameof(BlurWindow);
- public static readonly string CustomNonClientAreaWindow = nameof(CustomNonClientAreaWindow);
+ public static readonly string CustomNonClientAreaWindow = nameof(CustomNonClientAreaWindow);
- public static readonly string NoNonClientAreaDragableWindow = nameof(NoNonClientAreaDragableWindow);
+ public static readonly string NoNonClientAreaDragableWindow = nameof(NoNonClientAreaDragableWindow);
- public static readonly string QQGroupView = nameof(QQGroupView);
+ public static readonly string QQGroupView = nameof(QQGroupView);
- public static readonly string GlowWindow = nameof(GlowWindow);
+ public static readonly string GlowWindow = nameof(GlowWindow);
- public static readonly string NativeCommonWindow = nameof(NativeCommonWindow);
+ public static readonly string NativeCommonWindow = nameof(NativeCommonWindow);
- public static readonly string NavigationWindow = nameof(NavigationWindow);
+ public static readonly string NavigationWindow = nameof(NavigationWindow);
- public static readonly string TouchDragMoveWindow = nameof(TouchDragMoveWindow);
+ public static readonly string TouchDragMoveWindow = nameof(TouchDragMoveWindow);
- public static readonly string DialogContainer = nameof(DialogContainer);
+ public static readonly string DialogContainer = nameof(DialogContainer);
- public static readonly string LangUpdated = nameof(LangUpdated);
+ public static readonly string LangUpdated = nameof(LangUpdated);
+
+ public static readonly string SkinUpdated = nameof(SkinUpdated);
- }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt
index e01ca42f..085e6c30 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt
+++ b/src/Shared/HandyControlDemo_Shared/Data/MessageToken.tt
@@ -28,7 +28,8 @@ var messageList = new List
"NavigationWindow",
"TouchDragMoveWindow",
"DialogContainer",
- "LangUpdated"
+ "LangUpdated",
+ "SkinUpdated"
};
#>
namespace HandyControlDemo.Data
@@ -40,4 +41,4 @@ namespace HandyControlDemo.Data
<#}#>
}
-}
\ No newline at end of file
+}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/AvatarModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/AvatarModel.cs
index 9168a52a..2b4db4eb 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/AvatarModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/AvatarModel.cs
@@ -1,12 +1,11 @@
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class AvatarModel
{
- public class AvatarModel
- {
- public string DisplayName { get; set; }
+ public string DisplayName { get; set; }
- public string Link { get; set; }
+ public string Link { get; set; }
- public string AvatarUri { get; set; }
- }
+ public string AvatarUri { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/CardModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/CardModel.cs
index e8867f26..0c9b7feb 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/CardModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/CardModel.cs
@@ -1,11 +1,10 @@
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class CardModel
{
- public class CardModel
- {
- public string Header { get; set; }
+ public string Header { get; set; }
- public string Content { get; set; }
+ public string Content { get; set; }
- public string Footer { get; set; }
- }
+ public string Footer { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/ChatInfoModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/ChatInfoModel.cs
index 6f77fefc..c066a908 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/ChatInfoModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/ChatInfoModel.cs
@@ -1,17 +1,16 @@
using HandyControl.Data;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public struct ChatInfoModel
{
- public struct ChatInfoModel
- {
- public object Message { get; set; }
+ public object Message { get; set; }
- public string SenderId { get; set; }
+ public string SenderId { get; set; }
- public ChatRoleType Role { get; set; }
+ public ChatRoleType Role { get; set; }
- public ChatMessageType Type { get; set; }
+ public ChatMessageType Type { get; set; }
- public object Enclosure { get; set; }
- }
+ public object Enclosure { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/CoverViewDemoModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/CoverViewDemoModel.cs
index 23d5b341..bda5145a 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/CoverViewDemoModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/CoverViewDemoModel.cs
@@ -1,9 +1,8 @@
-namespace HandyControlDemo.Data
-{
- public class CoverViewDemoModel
- {
- public string ImgPath { get; set; }
+namespace HandyControlDemo.Data;
- public string BackgroundToken { get; set; }
- }
+public class CoverViewDemoModel
+{
+ public string ImgPath { get; set; }
+
+ public string BackgroundToken { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/DemoDataModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/DemoDataModel.cs
index 800a5f38..c6959889 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/DemoDataModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/DemoDataModel.cs
@@ -1,22 +1,21 @@
using System.Collections.Generic;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class DemoDataModel
{
- public class DemoDataModel
- {
- public int Index { get; set; }
+ public int Index { get; set; }
- public string Name { get; set; }
+ public string Name { get; set; }
- public bool IsSelected { get; set; }
+ public bool IsSelected { get; set; }
- public string Remark { get; set; }
+ public string Remark { get; set; }
- public DemoType Type { get; set; }
+ public DemoType Type { get; set; }
- public string ImgPath { get; set; }
+ public string ImgPath { get; set; }
- public List DataList { get; set; }
- }
+ public List DataList { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/DemoInfoModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/DemoInfoModel.cs
index ad5dc2fd..c412da7f 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/DemoInfoModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/DemoInfoModel.cs
@@ -1,38 +1,37 @@
using System.Collections.Generic;
using GalaSoft.MvvmLight;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class DemoInfoModel : ViewModelBase
{
- public class DemoInfoModel : ViewModelBase
+ public string Key { get; set; }
+
+ private string _title;
+
+ public string Title
{
- public string Key { get; set; }
-
- private string _title;
-
- public string Title
- {
- get => _title;
+ get => _title;
#if NET40
- set => Set(nameof(Title), ref _title, value);
+ set => Set(nameof(Title), ref _title, value);
#else
- set => Set(ref _title, value);
+ set => Set(ref _title, value);
#endif
- }
-
- private int _selectedIndex;
-
- public int SelectedIndex
- {
- get => _selectedIndex;
-#if NET40
- set => Set(nameof(SelectedIndex), ref _selectedIndex, value);
-#else
- set => Set(ref _selectedIndex, value);
-#endif
- }
-
- public bool IsGroupEnabled { get; set; }
-
- public IList DemoItemList { get; set; }
}
+
+ private int _selectedIndex;
+
+ public int SelectedIndex
+ {
+ get => _selectedIndex;
+#if NET40
+ set => Set(nameof(SelectedIndex), ref _selectedIndex, value);
+#else
+ set => Set(ref _selectedIndex, value);
+#endif
+ }
+
+ public bool IsGroupEnabled { get; set; }
+
+ public IList DemoItemList { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/DemoItemModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/DemoItemModel.cs
index b0811427..75bf7bff 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/DemoItemModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/DemoItemModel.cs
@@ -1,29 +1,39 @@
using GalaSoft.MvvmLight;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class DemoItemModel : ObservableObject
{
- public class DemoItemModel : ObservableObject
+ private bool _isVisible = true;
+ private string _queriesText = string.Empty;
+
+ public string Name { get; set; }
+
+ public string GroupName { get; set; }
+
+ public string TargetCtlName { get; set; }
+
+ public object ImageBrush { get; set; }
+
+ public bool IsNew { get; set; }
+
+ public string QueriesText
{
- public string Name { get; set; }
-
- public string GroupName { get; set; }
-
- public string TargetCtlName { get; set; }
-
- public string ImageName { get; set; }
-
- public bool IsNew { get; set; }
-
- private bool _isVisible = true;
-
- public bool IsVisible
- {
- get => _isVisible;
+ get => _queriesText;
#if NET40
- set => Set(nameof(IsVisible), ref _isVisible, value);
+ set => Set(nameof(QueriesText), ref _queriesText, value);
#else
- set => Set(ref _isVisible, value);
+ set => Set(ref _queriesText, value);
+#endif
+ }
+
+ public bool IsVisible
+ {
+ get => _isVisible;
+#if NET40
+ set => Set(nameof(IsVisible), ref _isVisible, value);
+#else
+ set => Set(ref _isVisible, value);
#endif
- }
}
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/GeometryItemModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/GeometryItemModel.cs
index 6068897a..c9f6939c 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/GeometryItemModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/GeometryItemModel.cs
@@ -1,13 +1,12 @@
using System.Windows.Media;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class GeometryItemModel
{
- public class GeometryItemModel
- {
- public Geometry Data { get; set; }
+ public Geometry Data { get; set; }
- public string Key { get; set; }
+ public string Key { get; set; }
- public bool Line { get; set; }
- }
+ public bool Line { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/PropertyGridDemoModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/PropertyGridDemoModel.cs
index a6c48a91..073453e1 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/PropertyGridDemoModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/PropertyGridDemoModel.cs
@@ -2,32 +2,31 @@
using System.Windows;
using System.Windows.Media;
-namespace HandyControlDemo.Data
+namespace HandyControlDemo.Data;
+
+public class PropertyGridDemoModel
{
- public class PropertyGridDemoModel
- {
- [Category("Category1")]
- public string String { get; set; }
+ [Category("Category1")]
+ public string String { get; set; }
- [Category("Category2")]
- public int Integer { get; set; }
+ [Category("Category2")]
+ public int Integer { get; set; }
- [Category("Category2")]
- public bool Boolean { get; set; }
+ [Category("Category2")]
+ public bool Boolean { get; set; }
- [Category("Category1")]
- public Gender Enum { get; set; }
+ [Category("Category1")]
+ public Gender Enum { get; set; }
- public HorizontalAlignment HorizontalAlignment { get; set; }
+ public HorizontalAlignment HorizontalAlignment { get; set; }
- public VerticalAlignment VerticalAlignment { get; set; }
+ public VerticalAlignment VerticalAlignment { get; set; }
- public ImageSource ImageSource { get; set; }
- }
+ public ImageSource ImageSource { get; set; }
+}
- public enum Gender
- {
- Male,
- Female
- }
+public enum Gender
+{
+ Male,
+ Female
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/StepBarDemoModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/StepBarDemoModel.cs
index 317054a5..fa59a930 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/StepBarDemoModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/StepBarDemoModel.cs
@@ -1,9 +1,8 @@
-namespace HandyControlDemo.Data
-{
- public class StepBarDemoModel
- {
- public string Header { get; set; }
+namespace HandyControlDemo.Data;
- public string Content { get; set; }
- }
+public class StepBarDemoModel
+{
+ public string Header { get; set; }
+
+ public string Content { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/Data/Model/TabControlDemoModel.cs b/src/Shared/HandyControlDemo_Shared/Data/Model/TabControlDemoModel.cs
index 5f27697e..d7637cc2 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/Model/TabControlDemoModel.cs
+++ b/src/Shared/HandyControlDemo_Shared/Data/Model/TabControlDemoModel.cs
@@ -1,9 +1,8 @@
-namespace HandyControlDemo.Data
-{
- public class TabControlDemoModel
- {
- public string Header { get; set; }
+namespace HandyControlDemo.Data;
- public string BackgroundToken { get; set; }
- }
+public class TabControlDemoModel
+{
+ public string Header { get; set; }
+
+ public string BackgroundToken { get; set; }
}
diff --git a/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems b/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
index 453a5424..893b8f35 100644
--- a/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
+++ b/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
@@ -40,6 +40,8 @@
+
+
Avatar.xaml
@@ -59,6 +61,12 @@
TextDialogWithTimer.xaml
+
+ AutoCompleteTextBoxDemoCtl.xaml
+
+
+ ElementGroupDemoCtl.xaml
+
FlexPanelDemoCtl.xaml
@@ -257,6 +265,9 @@
UniformSpacingPanelDemoCtl.xaml
+
+ WatermarkDemoCtl.xaml
+
WaterfallPanelDemoCtl.xaml
@@ -290,9 +301,6 @@
MainContent.xaml
-
- QQGroupView.xaml
-
UnderConstruction.xaml
@@ -406,7 +414,7 @@
-
+
@@ -416,15 +424,15 @@
-
+
-
+
@@ -539,6 +547,14 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
@@ -803,6 +819,10 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
@@ -847,10 +867,6 @@
Designer
MSBuild:Compile
-
- Designer
- MSBuild:Compile
-
Designer
MSBuild:Compile
@@ -1057,4 +1073,7 @@
+
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/MainWindow.xaml b/src/Shared/HandyControlDemo_Shared/MainWindow.xaml
index 252120c3..e7e26f91 100644
--- a/src/Shared/HandyControlDemo_Shared/MainWindow.xaml
+++ b/src/Shared/HandyControlDemo_Shared/MainWindow.xaml
@@ -1,4 +1,4 @@
-
-
+
diff --git a/src/Shared/HandyControlDemo_Shared/MainWindow.xaml.cs b/src/Shared/HandyControlDemo_Shared/MainWindow.xaml.cs
index f95e174a..8f686193 100644
--- a/src/Shared/HandyControlDemo_Shared/MainWindow.xaml.cs
+++ b/src/Shared/HandyControlDemo_Shared/MainWindow.xaml.cs
@@ -10,45 +10,46 @@ using HandyControlDemo.Tools;
using HandyControlDemo.UserControl;
using HandyControlDemo.ViewModel;
-namespace HandyControlDemo
+namespace HandyControlDemo;
+
+public partial class MainWindow
{
- public partial class MainWindow
+ public MainWindow() => InitializeComponent();
+
+ protected override void OnContentRendered(EventArgs e)
{
- public MainWindow() => InitializeComponent();
+ base.OnContentRendered(e);
- protected override void OnContentRendered(EventArgs e)
+ DataContext = ViewModelLocator.Instance.Main;
+ NonClientAreaContent = new NonClientAreaContent();
+ ControlMain.Content = new MainWindowContent();
+
+ GlobalShortcut.Init(new List
{
- base.OnContentRendered(e);
+ new(ViewModelLocator.Instance.Main.GlobalShortcutInfoCmd, Key.I, ModifierKeys.Control | ModifierKeys.Alt),
+ new(ViewModelLocator.Instance.Main.GlobalShortcutWarningCmd, Key.E, ModifierKeys.Control | ModifierKeys.Alt),
+ new(ViewModelLocator.Instance.Main.OpenDocCmd, Key.F1, ModifierKeys.None),
+ new(ViewModelLocator.Instance.Main.OpenCodeCmd, Key.F12, ModifierKeys.None)
+ });
- DataContext = ViewModelLocator.Instance.Main;
- NonClientAreaContent = new NonClientAreaContent();
- ControlMain.Content = new MainWindowContent();
+ Dialog.SetToken(this, MessageToken.MainWindow);
+ WindowAttach.SetIgnoreAltF4(this, true);
- GlobalShortcut.Init(new List
- {
- new KeyBinding(ViewModelLocator.Instance.Main.GlobalShortcutInfoCmd, Key.I, ModifierKeys.Control | ModifierKeys.Alt),
- new KeyBinding(ViewModelLocator.Instance.Main.GlobalShortcutWarningCmd, Key.E, ModifierKeys.Control | ModifierKeys.Alt)
- });
+ Messenger.Default.Send(true, MessageToken.FullSwitch);
+ Messenger.Default.Send(AssemblyHelper.CreateInternalInstance($"UserControl.{MessageToken.PracticalDemo}"), MessageToken.LoadShowContent);
+ }
- Dialog.SetToken(this, MessageToken.MainWindow);
- WindowAttach.SetIgnoreAltF4(this, true);
-
- Messenger.Default.Send(true, MessageToken.FullSwitch);
- Messenger.Default.Send(AssemblyHelper.CreateInternalInstance($"UserControl.{MessageToken.PracticalDemo}"), MessageToken.LoadShowContent);
+ protected override void OnClosing(CancelEventArgs e)
+ {
+ if (GlobalData.NotifyIconIsShow)
+ {
+ MessageBox.Info(Properties.Langs.Lang.AppClosingTip, Properties.Langs.Lang.Tip);
+ Hide();
+ e.Cancel = true;
}
-
- protected override void OnClosing(CancelEventArgs e)
+ else
{
- if (GlobalData.NotifyIconIsShow)
- {
- MessageBox.Info(Properties.Langs.Lang.AppClosingTip, Properties.Langs.Lang.Tip);
- Hide();
- e.Cancel = true;
- }
- else
- {
- base.OnClosing(e);
- }
+ base.OnClosing(e);
}
}
}
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/App.config b/src/Shared/HandyControlDemo_Shared/Properties/App.config
index df82ad2d..ec1d182a 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/App.config
+++ b/src/Shared/HandyControlDemo_Shared/Properties/App.config
@@ -4,5 +4,6 @@
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
index 87d1c04e..426fcbfe 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
@@ -20,7 +20,7 @@ namespace HandyControlDemo.Properties.Langs
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Lang
@@ -124,6 +124,17 @@ namespace HandyControlDemo.Properties.Langs
}
}
+ ///
+ /// Looks up a localized string similar to 自动补全文本框.
+ ///
+ public static string AutoCompleteTextBox
+ {
+ get
+ {
+ return ResourceManager.GetString("AutoCompleteTextBox", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to 标记.
///
@@ -377,6 +388,17 @@ namespace HandyControlDemo.Properties.Langs
}
}
+ ///
+ /// Looks up a localized string similar to 关闭主窗口对话框.
+ ///
+ public static string CloseMainWindowDialog
+ {
+ get
+ {
+ return ResourceManager.GetString("CloseMainWindowDialog", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to 颜色拾取器.
///
@@ -718,6 +740,17 @@ namespace HandyControlDemo.Properties.Langs
}
}
+ ///
+ /// Looks up a localized string similar to 元素组.
+ ///
+ public static string ElementGroup
+ {
+ get
+ {
+ return ResourceManager.GetString("ElementGroup", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to 邮箱.
///
@@ -2533,6 +2566,17 @@ namespace HandyControlDemo.Properties.Langs
}
}
+ ///
+ /// Looks up a localized string similar to 水印.
+ ///
+ public static string Watermark
+ {
+ get
+ {
+ return ResourceManager.GetString("Watermark", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to 网站.
///
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ca-ES.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ca-ES.resx
index f1f00611..08cab049 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ca-ES.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ca-ES.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.cs.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.cs.resx
new file mode 100644
index 00000000..6d96370b
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.cs.resx
@@ -0,0 +1,810 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Ovládací prvky
+
+
+ Style
+
+
+ Growl
+
+
+ Dnes je krásný den~~~
+
+
+ Soubor se úspěšně uložil!
+
+
+ Na disku dochází místo!
+
+
+ Připojení se nezdařilo. Prosím zkontrolujte vaše síťové připojení.
+
+
+ Aplikace se neočekávaně ukončila~~~
+
+
+ Nalezena nová verze! Chcete aplikaci aktualizovat?
+
+
+ Načítání
+
+
+ ImageBrowser
+
+
+ ColorPicker
+
+
+ Carousel
+
+
+ CompareSlider
+
+
+ TimeBar
+
+
+ Expander
+
+
+ Pagination
+
+
+ Klikni pro otevření prohlížeče obrázků
+
+
+ ProgressBar
+
+
+ AnimationPath
+
+
+ Button
+
+
+ ToggleButton
+
+
+ TabControl
+
+
+ CheckBox
+
+
+ TextBlock
+
+
+ Default
+
+
+ Primary
+
+
+ Info
+
+
+ Warning
+
+
+ Danger
+
+
+ Custom button
+
+
+ Titulek
+
+
+ StepBar
+
+
+ Předchozí
+
+
+ Další
+
+
+ Registrovat
+
+
+ Vyplňte základní údaje
+
+
+ Nahraj soubor
+
+
+ Complete
+
+
+ Clock
+
+
+ Calendar
+
+
+ DatePicker
+
+
+ TimePicker
+
+
+ TextBox
+
+
+ Toto je obsah
+
+
+ Toto je titulek
+
+
+ Toto pole musí být vyplněno
+
+
+ Zadej obsah
+
+
+ Titulek vlevo
+
+
+ Text
+
+
+ Podtitulek
+
+
+ PasswordBox
+
+
+ CirclePanel
+
+
+ ComboBox
+
+
+ NumericUpDown
+
+
+ DataGrid
+
+
+ ID
+
+
+ Název
+
+
+ Type
+
+
+ Remark
+
+
+ Vybrané
+
+
+ ListBox
+
+
+ TreeView
+
+
+ ScrollViewer
+
+
+ Window
+
+
+ Menu
+
+
+ Klikni pravým tlačítkem myši
+
+
+ RadioButton
+
+
+ otevřít message window
+
+
+ otevři vlastní window
+
+
+ otevři vlastní Non-client Area window
+
+
+ otevřít mouse follow window
+
+
+ otevři vlastní content window
+
+
+ Ignorovat
+
+
+ Error
+
+
+ Ask
+
+
+ Fatal
+
+
+ Clear
+
+
+ Chcete pro změnu jazyka aplikaci znovu spustit?
+
+
+ Informace
+
+
+ Repozitář
+
+
+ Email
+
+
+ Chatroom
+
+
+ Blog
+
+
+ Brush
+
+
+ PreviewSlider
+
+
+ Přispěvatelé
+
+
+ Slider
+
+
+ Toto není číslo telefonu
+
+
+ Zadej e-mail
+
+
+ Krok
+
+
+ CalendarWithClock
+
+
+ DateTimePicker
+
+
+ GroupBox
+
+
+ ListView
+
+
+ RichTextBox
+
+
+ ToolBar
+
+
+ Common
+
+
+ Zobrazit číslo řádku
+
+
+ SearchBar
+
+
+ Tag
+
+
+ GifImage
+
+
+ OutlineText
+
+
+ Skupina QQ
+
+
+ FlipClock
+
+
+ Otevři BlurWindow
+
+
+ Rate
+
+
+ Shield
+
+
+ WaterfallPanel
+
+
+ Groups
+
+
+ CoverView
+
+
+ CoverFlow
+
+
+ Zadej klíčkové slovo
+
+
+ neotevírat Non-client Area dragable window
+
+
+ Zde potáhni
+
+
+ MessageBox
+
+
+ ProgressButton
+
+
+ Nahrát;Nahrávání
+
+
+ otevři vlastní message window
+
+
+ Transfer
+
+
+ ChatBubble
+
+
+ Klikni pro mluvení (PTT)
+
+
+ sek.
+
+
+ Label
+
+
+ GotoTop
+
+
+ NotifyIcon
+
+
+ Badge
+
+
+ Gravatar
+
+
+ Již brzy
+
+
+ Comment
+
+
+ Odpovědět
+
+
+ Dialog
+
+
+ TextDialog
+
+
+ Počkejte prosím...
+
+
+ Growl demo
+
+
+ Nové okno
+
+
+ Visibility
+
+
+ Blikej
+
+
+ Exit
+
+
+ Otevři Panel
+
+
+ Ikona na hlavním panelu je otevřená a skryje okno místo zavření programu
+
+
+ Nápověda
+
+
+ Opravdu chcete ukončit aplikaci?
+
+
+ Interaktivní dialogové okno
+
+
+ Ok
+
+
+ Prosím vložte...
+
+
+ Připočti
+
+
+ RepeatButton
+
+
+ Ukázka dialogového okna
+
+
+ Zobrazit v tomto okně
+
+
+ Zobrazit v hlavním okně
+
+
+ SideMenu
+
+
+ Grid
+
+
+ Základní rozložení
+
+
+ Rozestupy sloupců
+
+
+ Hybridní rozložení
+
+
+ Odsazení sloupců
+
+
+ Responzivní rozložení
+
+
+ Border
+
+
+ Poptip
+
+
+ Doporučení
+
+
+ Projekt
+
+
+ RangeSlider
+
+
+ RelativePanel
+
+
+ Zap.
+
+
+ Vyp.
+
+
+ ButtonGroup
+
+
+ Card
+
+
+ TextDialog s časovačem
+
+
+ Magnifier
+
+
+ ImageBlock
+
+
+ RunningBlock
+
+
+ HoneycombPanel
+
+
+ Přidat položku
+
+
+ Smazat prvek
+
+
+ Sprite
+
+
+ Otevři Sprite
+
+
+ Notification
+
+
+ Poslat upozornění
+
+
+ Nechat otevřené
+
+
+ FloatingBlock
+
+
+ SplitButton
+
+
+ Tools
+
+
+ HatchBrushGenerator
+
+
+ Morphing Animation
+
+
+ Divider
+
+
+ top-start;top;top-end;right-start;right;right-end;bottom-end;bottom;bottom-start;left-end;left;left-start
+
+
+ TransitioningContentControl
+
+
+ Drawer
+
+
+ Dokumentace
+
+
+ Efekty
+
+
+ Webová stránka
+
+
+ Vsix
+
+
+ Anglická dokumentace
+
+
+ Čínská dokumentace
+
+
+ Ukázka
+
+
+ PinBox
+
+
+ FlowDocumentScrollViewer
+
+
+ Otevři GlowWindow
+
+
+ FlowDocument
+
+
+ FlowDocumentPageViewer
+
+
+ FlowDocumentReader
+
+
+ Otevřít NativeCommonWindow
+
+
+ Otevřít NavigationWindow
+
+
+ Frame
+
+
+ Praktické ukázky
+
+
+ Udělej snímek obrazovky
+
+
+ Screenshot
+
+
+ TextDialog (uvnitř ovládacího prvku)
+
+
+ Hledám řetězec podobný „{0}“.
+
+
+ PropertyGrid
+
+
+ ImageSelector
+
+
+ Geometry
+
+
+ CheckComboBox
+
+
+ FlexPanel
+
+
+ Otevři TouchDragMoveWindow
+
+
+ UniformSpacingPanel
+
+
+ Různé
+
+
+ Interacting
+
+
+ Zadání dat
+
+
+ Zobrazení dat
+
+
+ Navigation
+
+
+ Layout
+
+
+ Zpětná vazba
+
+
+ Success
+
+
+ Empty
+
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
index 83434bcd..7d29f69e 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.es.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.es.resx
new file mode 100644
index 00000000..a862d437
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.es.resx
@@ -0,0 +1,810 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Controles
+
+
+ Estilos
+
+
+ Growl
+
+
+ Hoy es un lindo día~~~
+
+
+ ¡Archivo guardado exitosamente!
+
+
+ ¡No hay más espacio disponible en el disco!
+
+
+ La conexión falló. ¡Por favor revisa tu conexión a internet!
+
+
+ El programa se ha detenido de forma inesperada
+
+
+ Se ha detectado una nueva versión del programa. ¿Desea actualizarlo?
+
+
+ Cargando
+
+
+ ImageBrowser
+
+
+ ColorPicker
+
+
+ Carousel
+
+
+ CompareSlider
+
+
+ TimeBar
+
+
+ Expander
+
+
+ Pagination
+
+
+ Pulse para seleccionar una imagen
+
+
+ ProgressBar
+
+
+ AnimationPath
+
+
+ Button
+
+
+ ToggleButton
+
+
+ TabControl
+
+
+ CheckBox
+
+
+ TextBlock
+
+
+ Por defecto
+
+
+ Primario
+
+
+ Éxito
+
+
+ Info
+
+
+ Advertencia
+
+
+ Error
+
+
+ Personalizado
+
+
+ Título
+
+
+ StepBar
+
+
+ Anterior
+
+
+ Siguiente
+
+
+ Registrarse
+
+
+ Completar sus datos
+
+
+ Subir archivo
+
+
+ Completado
+
+
+ Reloj
+
+
+ Calendario
+
+
+ DatePicker
+
+
+ TimePicker
+
+
+ TextBox
+
+
+ Este es el contenido
+
+
+ Este es el título
+
+
+ Este campo es obligatorio
+
+
+ Por favor complete el campo
+
+
+ Este título está a la izquierda
+
+
+ Texto
+
+
+ Subtitulo
+
+
+ PasswordBox
+
+
+ CirclePanel
+
+
+ ComboBox
+
+
+ NumericUpDown
+
+
+ DataGrid
+
+
+ Index
+
+
+ Name
+
+
+ Type
+
+
+ Remark
+
+
+ Selected
+
+
+ ListBox
+
+
+ TreeView
+
+
+ ScrollViewer
+
+
+ Window
+
+
+ Menu
+
+
+ Haga click derecho
+
+
+ RadioButton
+
+
+ Abrir ventana con mensaje
+
+
+ Abrir ventana común
+
+
+ Abrir ventana sin bordes personalizada
+
+
+ Abrir ventana que sigue al mouse
+
+
+ Abrir ventana personalizada
+
+
+ Ignorar
+
+
+ Error
+
+
+ Pregunta
+
+
+ Fatal
+
+
+ Borrar
+
+
+ ¿Desea reiniciar para cambiar el idioma?
+
+
+ Acerca de
+
+
+ Repositorio
+
+
+ Email
+
+
+ Chatroom
+
+
+ Blog
+
+
+ Brush
+
+
+ PreviewSlider
+
+
+ Contribuyentes
+
+
+ Slider
+
+
+ Número de teléfono inválido
+
+
+ Por favor ingrese un email válido
+
+
+ Step
+
+
+ CalendarWithClock
+
+
+ DateTimePicker
+
+
+ GroupBox
+
+
+ ListView
+
+
+ RichTextBox
+
+
+ ToolBar
+
+
+ Common
+
+
+ ShowRowNumber
+
+
+ SearchBar
+
+
+ Tag
+
+
+ GifImage
+
+
+ OutlineText
+
+
+ QQ Group
+
+
+ FlipClock
+
+
+ Abrir ventana difuminada
+
+
+ Rate
+
+
+ Shield
+
+
+ WaterfallPanel
+
+
+ Groups
+
+
+ CoverView
+
+
+ CoverFlow
+
+
+ Buscar
+
+
+ Abrir ventana arrastrable sin bordes
+
+
+ Suelte aquí
+
+
+ MessageBox
+
+
+ ProgressButton
+
+
+ Cargar archivo;Cargando archivo
+
+
+ Abrir ventana de mensaje personalizada
+
+
+ Transfer
+
+
+ ChatBubble
+
+
+ Pulse para hablar
+
+
+ Seg
+
+
+ Label
+
+
+ Ir arriba
+
+
+ NotifyIcon
+
+
+ Badge
+
+
+ Gravatar
+
+
+ Próximamente
+
+
+ Commentario
+
+
+ Respuesta
+
+
+ Dialog
+
+
+ TextDialog
+
+
+ Por favor aguarde...
+
+
+ Growl demo
+
+
+ Nueva ventana
+
+
+ Visibility
+
+
+ Blink
+
+
+ Salir
+
+
+ Abrir panel
+
+
+ El icono de la bandeja está abierto y ocultará la ventana en lugar de cerrar el programa.
+
+
+ Prompt
+
+
+ ¿Intentar cerrar la aplicación?
+
+
+ Diálogo interactivo
+
+
+ Aceptar
+
+
+ Por favor ingrese un texto...
+
+
+ Click para incrementar
+
+
+ RepeatButton
+
+
+ Dialog demo
+
+
+ Mostrar en esta ventana
+
+
+ Mostrar en la ventana principal
+
+
+ SideMenu
+
+
+ Grid
+
+
+ Layout básico
+
+
+ Columnas espaciadas
+
+
+ Layout Híbrido
+
+
+ Columnas con offset
+
+
+ Layout Responsivo
+
+
+ Border
+
+
+ Poptip
+
+
+ Recommendation
+
+
+ Project
+
+
+ RangeSlider
+
+
+ RelativePanel
+
+
+ On
+
+
+ Off
+
+
+ ButtonGroup
+
+
+ Card
+
+
+ TextDialog with timer
+
+
+ Magnifier
+
+
+ ImageBlock
+
+
+ RunningBlock
+
+
+ HoneycombPanel
+
+
+ Add an item
+
+
+ Remove an item
+
+
+ Sprite
+
+
+ Abrir sprite
+
+
+ Notification
+
+
+ Enviar notificación
+
+
+ Permance abierto
+
+
+ FloatingBlock
+
+
+ SplitButton
+
+
+ Herramientas
+
+
+ HatchBrushGenerator
+
+
+ Morphing Animation
+
+
+ Divider
+
+
+ top-start;top;top-end;right-start;right;right-end;bottom-end;bottom;bottom-start;left-end;left;left-start
+
+
+ TransitioningContentControl
+
+
+ Drawer
+
+
+ Documentación
+
+
+ Effects
+
+
+ Sitio Web
+
+
+ Vsix
+
+
+ Documentación en Inglés
+
+
+ Documentación en Chino
+
+
+ Demo
+
+
+ PinBox
+
+
+ FlowDocumentScrollViewer
+
+
+ Abrir glowWindow
+
+
+ FlowDocument
+
+
+ FlowDocumentPageViewer
+
+
+ FlowDocumentReader
+
+
+ Abrir ventana común nativa
+
+
+ Abrir ventana de navegación
+
+
+ Frame
+
+
+ Ejemplos
+
+
+ Iniciar Captura de Pantalla
+
+
+ Captura de Pantalla
+
+
+ TextDialog(In control)
+
+
+ Looks up a localized string similar to "{0}".
+
+
+ PropertyGrid
+
+
+ ImageSelector
+
+
+ Geometry
+
+
+ CheckComboBox
+
+
+ FlexPanel
+
+
+ Abrir ventana TouchDragMove
+
+
+ UniformSpacingPanel
+
+
+ Misc
+
+
+ Interactuando
+
+
+ Datos de entrada
+
+
+ Data de visualización
+
+
+ Navegación
+
+
+ Layout
+
+
+ Feedback
+
+
+ Empty
+
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx
index 79896305..49cefcc9 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx
index dc8c74ba..1261d360 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ja.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ja.resx
new file mode 100644
index 00000000..65d55f2b
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ja.resx
@@ -0,0 +1,810 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ コントロール
+
+
+ スタイル
+
+
+ Growl
+
+
+ It's a nice day today~~~
+
+
+ File saved successfully!
+
+
+ Disk space is running out!
+
+
+ 接続できません。ネットワーク接続を確認してください!
+
+
+ The program has crashed~~~
+
+
+ 新しいバージョンがあります!アップデートしますか?
+
+
+ Loading
+
+
+ ImageBrowser
+
+
+ ColorPicker
+
+
+ Carousel
+
+
+ CompareSlider
+
+
+ TimeBar
+
+
+ Expander
+
+
+ Pagination
+
+
+ 画像ブラウザを開く
+
+
+ ProgressBar
+
+
+ AnimationPath
+
+
+ Button
+
+
+ ToggleButton
+
+
+ TabControl
+
+
+ CheckBox
+
+
+ TextBlock
+
+
+ Default
+
+
+ Primary
+
+
+ Success
+
+
+ Info
+
+
+ Warning
+
+
+ Danger
+
+
+ Custom button
+
+
+ タイトル
+
+
+ StepBar
+
+
+ Prev
+
+
+ Next
+
+
+ Register
+
+
+ Fill in the basic information
+
+
+ Upload file
+
+
+ Complete
+
+
+ Clock
+
+
+ Calendar
+
+
+ DatePicker
+
+
+ TimePicker
+
+
+ TextBox
+
+
+ ここはコンテンツ
+
+
+ ここはタイトル
+
+
+ ここは入力必須
+
+
+ 内容を入力
+
+
+ 左寄せタイトル
+
+
+ テキスト
+
+
+ サブタイトル
+
+
+ PasswordBox
+
+
+ CirclePanel
+
+
+ ComboBox
+
+
+ NumericUpDown
+
+
+ DataGrid
+
+
+ インデックス
+
+
+ 名前
+
+
+ 種類
+
+
+ 注記
+
+
+ 選択
+
+
+ ListBox
+
+
+ TreeView
+
+
+ ScrollViewer
+
+
+ Window
+
+
+ Menu
+
+
+ ここを右クリック
+
+
+ RadioButton
+
+
+ メッセージウインドウを開く
+
+
+ 通常のウインドウを開く
+
+
+ カスタム非クライアント領域ウインドウを開く
+
+
+ マウス位置にウインドウを開く
+
+
+ カスタムコンテンツウインドウを開く
+
+
+ Ignore
+
+
+ Error
+
+
+ Ask
+
+
+ Fatal
+
+
+ Clear
+
+
+ Whether to restart to change the language?
+
+
+ 情報
+
+
+ リポジトリ
+
+
+ Eメール
+
+
+ チャットルーム
+
+
+ ブログ
+
+
+ Brush
+
+
+ PreviewSlider
+
+
+ 貢献者
+
+
+ Slider
+
+
+ It's not a phone number
+
+
+ Eメールアドレスを入力
+
+
+ Step
+
+
+ CalendarWithClock
+
+
+ DateTimePicker
+
+
+ GroupBox
+
+
+ ListView
+
+
+ RichTextBox
+
+
+ ToolBar
+
+
+ 通常
+
+
+ 行番号表示
+
+
+ SearchBar
+
+
+ Tag
+
+
+ GifImage
+
+
+ OutlineText
+
+
+ QQ Group
+
+
+ FlipClock
+
+
+ BlurWindowを開く
+
+
+ Rate
+
+
+ Shield
+
+
+ WaterfallPanel
+
+
+ Groups
+
+
+ CoverView
+
+
+ CoverFlow
+
+
+ 検索ワードを入力
+
+
+ 非クライアント領域の無いドラッグ可能ウインドウを開く
+
+
+ Drag here
+
+
+ MessageBox
+
+
+ ProgressButton
+
+
+ アップロード;アップロード中
+
+
+ カスタムメッセージウインドウを開く
+
+
+ Transfer
+
+
+ ChatBubble
+
+
+ Push to talk
+
+
+ Sec
+
+
+ Label
+
+
+ GotoTop
+
+
+ NotifyIcon
+
+
+ Badge
+
+
+ Gravatar
+
+
+ 近日公開
+
+
+ Comment
+
+
+ Reply
+
+
+ Dialog
+
+
+ TextDialog
+
+
+ お待ちください...
+
+
+ Growl デモ
+
+
+ 新規ウインドウ
+
+
+ 表示
+
+
+ 点滅
+
+
+ Exit
+
+
+ Open Panel
+
+
+ The tray icon is open and will hide the window instead of closing the program
+
+
+ Prompt
+
+
+ Try to close app?
+
+
+ 対話型 Dialog
+
+
+ Ok
+
+
+ 入力してください...
+
+
+ Click to count
+
+
+ RepeatButton
+
+
+ Dialog デモ
+
+
+ このウインドウに表示
+
+
+ メインウインドウに表示
+
+
+ SideMenu
+
+
+ Grid
+
+
+ 基本レイアウト
+
+
+ 列スペース
+
+
+ 混合レイアウト
+
+
+ 列オフセット
+
+
+ レスポンシブレイアウト
+
+
+ Border
+
+
+ Poptip
+
+
+ おすすめ
+
+
+ プロジェクト
+
+
+ RangeSlider
+
+
+ RelativePanel
+
+
+ On
+
+
+ Off
+
+
+ ButtonGroup
+
+
+ Card
+
+
+ TextDialog, タイマーあり
+
+
+ Magnifier
+
+
+ ImageBlock
+
+
+ RunningBlock
+
+
+ HoneycombPanel
+
+
+ アイテム追加
+
+
+ アイテム削除
+
+
+ Sprite
+
+
+ Spriteを開く
+
+
+ Notification
+
+
+ 通知を送信
+
+
+ 開いたままにする
+
+
+ FloatingBlock
+
+
+ SplitButton
+
+
+ ツール
+
+
+ HatchBrushGenerator
+
+
+ Morphing Animation
+
+
+ Divider
+
+
+ top-start;top;top-end;right-start;right;right-end;bottom-end;bottom;bottom-start;left-end;left;left-start
+
+
+ TransitioningContentControl
+
+
+ Drawer
+
+
+ ドキュメント
+
+
+ Effects
+
+
+ ウェブサイト
+
+
+ Vsix
+
+
+ 英語ドキュメント
+
+
+ 中国語ドキュメント
+
+
+ デモ
+
+
+ PinBox
+
+
+ FlowDocumentScrollViewer
+
+
+ GlowWindowを開く
+
+
+ FlowDocument
+
+
+ FlowDocumentPageViewer
+
+
+ FlowDocumentReader
+
+
+ 標準のウインドウを開く
+
+
+ ナビゲーションウインドウを開く
+
+
+ Frame
+
+
+ 実用例
+
+
+ スクリーンショット開始
+
+
+ Screenshot
+
+
+ TextDialog(コントロール内)
+
+
+ Looks up a localized string similar to "{0}".
+
+
+ PropertyGrid
+
+
+ ImageSelector
+
+
+ Geometry
+
+
+ CheckComboBox
+
+
+ FlexPanel
+
+
+ タッチ移動ウインドウを開く
+
+
+ UniformSpacingPanel
+
+
+ Misc
+
+
+ Interacting
+
+
+ Data Entry
+
+
+ Data Display
+
+
+ Navigation
+
+
+ Layout
+
+
+ Feedback
+
+
+ Empty
+
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx
index 045f36be..d4001518 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pl.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pl.resx
index 2a8c9c61..91e5885b 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pl.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pl.resx
@@ -355,7 +355,7 @@
Czy uruchomić ponownie aby zmienić język?
- Około
+ Informacje
Repozytorium
@@ -517,7 +517,7 @@
TextDialog
- Proszę czekać
+ Proszę czekać...
Growl demo
@@ -792,4 +792,19 @@
Success
+
+ Empty
+
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pt-BR.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pt-BR.resx
index 75e37f07..941143f4 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pt-BR.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.pt-BR.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ 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 d0db53b2..7b48c97f 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
@@ -795,4 +795,16 @@
空状态
+
+ 元素组
+
+
+ 自动补全文本框
+
+
+ 水印
+
+
+ 关闭主窗口对话框
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ru.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ru.resx
index d50b468e..18756c23 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ru.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ru.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.tr.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.tr.resx
index aa64d6a7..facb4c74 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.tr.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.tr.resx
@@ -795,4 +795,16 @@
Empty
+
+ ElementGroup
+
+
+ AutoCompleteTextBox
+
+
+ Watermark
+
+
+ Close main window dialog
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.cs b/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.cs
index 7e244439..fee4dd7b 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.cs
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.cs
@@ -4,2535 +4,2583 @@ using System.Windows;
using System.Windows.Data;
using HandyControl.Tools;
-namespace HandyControlDemo.Properties.Langs
+namespace HandyControlDemo.Properties.Langs;
+
+public class LangProvider : INotifyPropertyChanged
{
- public class LangProvider : INotifyPropertyChanged
+ internal static LangProvider Instance { get; } = ResourceHelper.GetResource("DemoLangs");
+
+ private static string CultureInfoStr;
+
+ public static CultureInfo Culture
{
- internal static LangProvider Instance => ResourceHelper.GetResource("DemoLangs");
-
- private static string CultureInfoStr;
-
- public static CultureInfo Culture
+ get => Lang.Culture;
+ set
{
- get => Lang.Culture;
- set
- {
- if (value == null) return;
- if (Equals(CultureInfoStr, value.EnglishName)) return;
- Lang.Culture = value;
- CultureInfoStr = value.EnglishName;
+ if (value == null) return;
+ if (Equals(CultureInfoStr, value.EnglishName)) return;
+ Lang.Culture = value;
+ CultureInfoStr = value.EnglishName;
- Instance.UpdateLangs();
- }
+ Instance.UpdateLangs();
}
-
- public static string GetLang(string key) => Lang.ResourceManager.GetString(key, Culture);
-
- public static void SetLang(DependencyObject dependencyObject, DependencyProperty dependencyProperty, string key) =>
- BindingOperations.SetBinding(dependencyObject, dependencyProperty, new Binding(key)
- {
- Source = Instance,
- Mode = BindingMode.OneWay
- });
-
- private void UpdateLangs()
- {
- OnPropertyChanged(nameof(About));
- OnPropertyChanged(nameof(AddItem));
- OnPropertyChanged(nameof(AnimationPath));
- OnPropertyChanged(nameof(AppClosingTip));
- OnPropertyChanged(nameof(Ask));
- OnPropertyChanged(nameof(Badge));
- OnPropertyChanged(nameof(BasicInfo));
- OnPropertyChanged(nameof(BasicLayout));
- OnPropertyChanged(nameof(Blink));
- OnPropertyChanged(nameof(Blog));
- OnPropertyChanged(nameof(Border));
- OnPropertyChanged(nameof(Brush));
- OnPropertyChanged(nameof(Button));
- OnPropertyChanged(nameof(ButtonCustom));
- OnPropertyChanged(nameof(ButtonGroup));
- OnPropertyChanged(nameof(Calendar));
- OnPropertyChanged(nameof(CalendarWithClock));
- OnPropertyChanged(nameof(Card));
- OnPropertyChanged(nameof(Carousel));
- OnPropertyChanged(nameof(ChangeLangAsk));
- OnPropertyChanged(nameof(ChatBubble));
- OnPropertyChanged(nameof(Chatroom));
- OnPropertyChanged(nameof(CheckBox));
- OnPropertyChanged(nameof(CheckComboBox));
- OnPropertyChanged(nameof(CirclePanel));
- OnPropertyChanged(nameof(Clear));
- OnPropertyChanged(nameof(Click2Count));
- OnPropertyChanged(nameof(Clock));
- OnPropertyChanged(nameof(ColorPicker));
- OnPropertyChanged(nameof(ColumnOffset));
- OnPropertyChanged(nameof(ColumnSpacing));
- OnPropertyChanged(nameof(ComboBox));
- OnPropertyChanged(nameof(ComingSoon));
- OnPropertyChanged(nameof(Comment));
- OnPropertyChanged(nameof(Common));
- OnPropertyChanged(nameof(CompareSlider));
- OnPropertyChanged(nameof(Complete));
- OnPropertyChanged(nameof(ContentDemoStr));
- OnPropertyChanged(nameof(Contributors));
- OnPropertyChanged(nameof(Controls));
- OnPropertyChanged(nameof(CoverFlow));
- OnPropertyChanged(nameof(CoverView));
- OnPropertyChanged(nameof(Danger));
- OnPropertyChanged(nameof(DataDisplay));
- OnPropertyChanged(nameof(DataEntry));
- OnPropertyChanged(nameof(DataGrid));
- OnPropertyChanged(nameof(DatePicker));
- OnPropertyChanged(nameof(DateTimePicker));
- OnPropertyChanged(nameof(Default));
- OnPropertyChanged(nameof(Demo));
- OnPropertyChanged(nameof(Dialog));
- OnPropertyChanged(nameof(DialogDemo));
- OnPropertyChanged(nameof(Divider));
- OnPropertyChanged(nameof(Doc_cn));
- OnPropertyChanged(nameof(Doc_en));
- OnPropertyChanged(nameof(Documentation));
- OnPropertyChanged(nameof(DragHere));
- OnPropertyChanged(nameof(Drawer));
- OnPropertyChanged(nameof(Effects));
- OnPropertyChanged(nameof(Email));
- OnPropertyChanged(nameof(Empty));
- OnPropertyChanged(nameof(Error));
- OnPropertyChanged(nameof(Exit));
- OnPropertyChanged(nameof(Expander));
- OnPropertyChanged(nameof(Fatal));
- OnPropertyChanged(nameof(Feedback));
- OnPropertyChanged(nameof(FlexPanel));
- OnPropertyChanged(nameof(FlipClock));
- OnPropertyChanged(nameof(FloatingBlock));
- OnPropertyChanged(nameof(FlowDocument));
- OnPropertyChanged(nameof(FlowDocumentPageViewer));
- OnPropertyChanged(nameof(FlowDocumentReader));
- OnPropertyChanged(nameof(FlowDocumentScrollViewer));
- OnPropertyChanged(nameof(Frame));
- OnPropertyChanged(nameof(Geometry));
- OnPropertyChanged(nameof(GifImage));
- OnPropertyChanged(nameof(GotoTop));
- OnPropertyChanged(nameof(Gravatar));
- OnPropertyChanged(nameof(Grid));
- OnPropertyChanged(nameof(GroupBox));
- OnPropertyChanged(nameof(Groups));
- OnPropertyChanged(nameof(Growl));
- OnPropertyChanged(nameof(GrowlAsk));
- OnPropertyChanged(nameof(GrowlDemo));
- OnPropertyChanged(nameof(GrowlError));
- OnPropertyChanged(nameof(GrowlFatal));
- OnPropertyChanged(nameof(GrowlInfo));
- OnPropertyChanged(nameof(GrowlSuccess));
- OnPropertyChanged(nameof(GrowlWarning));
- OnPropertyChanged(nameof(HatchBrushGenerator));
- OnPropertyChanged(nameof(HoneycombPanel));
- OnPropertyChanged(nameof(HybridLayout));
- OnPropertyChanged(nameof(Ignore));
- OnPropertyChanged(nameof(ImageBlock));
- OnPropertyChanged(nameof(ImageBrowser));
- OnPropertyChanged(nameof(ImageSelector));
- OnPropertyChanged(nameof(Index));
- OnPropertyChanged(nameof(Info));
- OnPropertyChanged(nameof(Interacting));
- OnPropertyChanged(nameof(InteractiveDialog));
- OnPropertyChanged(nameof(IsNotPhone));
- OnPropertyChanged(nameof(Label));
- OnPropertyChanged(nameof(LangComment));
- OnPropertyChanged(nameof(Layout));
- OnPropertyChanged(nameof(ListBox));
- OnPropertyChanged(nameof(ListView));
- OnPropertyChanged(nameof(Loading));
- OnPropertyChanged(nameof(Magnifier));
- OnPropertyChanged(nameof(Menu));
- OnPropertyChanged(nameof(MessageBox));
- OnPropertyChanged(nameof(Misc));
- OnPropertyChanged(nameof(Morphing_Animation));
- OnPropertyChanged(nameof(Name));
- OnPropertyChanged(nameof(Navigation));
- OnPropertyChanged(nameof(NewWindow));
- OnPropertyChanged(nameof(Next));
- OnPropertyChanged(nameof(Notification));
- OnPropertyChanged(nameof(NotifyIcon));
- OnPropertyChanged(nameof(NumericUpDown));
- OnPropertyChanged(nameof(Off));
- OnPropertyChanged(nameof(Ok));
- OnPropertyChanged(nameof(On));
- OnPropertyChanged(nameof(OpenBlurWindow));
- OnPropertyChanged(nameof(OpenCommonWindow));
- OnPropertyChanged(nameof(OpenCustomContentWindow));
- OnPropertyChanged(nameof(OpenCustomMessageWindow));
- OnPropertyChanged(nameof(OpenCustomNonClientAreaWindow));
- OnPropertyChanged(nameof(OpenGlowWindow));
- OnPropertyChanged(nameof(OpenImageBrowser));
- OnPropertyChanged(nameof(OpenMessageWindow));
- OnPropertyChanged(nameof(OpenMouseFollowWindow));
- OnPropertyChanged(nameof(OpenNativeCommonWindow));
- OnPropertyChanged(nameof(OpenNavigationWindow));
- OnPropertyChanged(nameof(OpenNoNonClientAreaDragableWindow));
- OnPropertyChanged(nameof(OpenPanel));
- OnPropertyChanged(nameof(OpenSprite));
- OnPropertyChanged(nameof(OpenTouchDragMoveWindow));
- OnPropertyChanged(nameof(OutlineText));
- OnPropertyChanged(nameof(Pagination));
- OnPropertyChanged(nameof(PasswordBox));
- OnPropertyChanged(nameof(PinBox));
- OnPropertyChanged(nameof(PleaseInput));
- OnPropertyChanged(nameof(PleaseWait));
- OnPropertyChanged(nameof(PlsEnterContent));
- OnPropertyChanged(nameof(PlsEnterEmail));
- OnPropertyChanged(nameof(PlsEnterKey));
- OnPropertyChanged(nameof(Poptip));
- OnPropertyChanged(nameof(PoptipPositionStr));
- OnPropertyChanged(nameof(PracticalDemos));
- OnPropertyChanged(nameof(Prev));
- OnPropertyChanged(nameof(PreviewSlider));
- OnPropertyChanged(nameof(Primary));
- OnPropertyChanged(nameof(ProgressBar));
- OnPropertyChanged(nameof(ProgressButton));
- OnPropertyChanged(nameof(Project));
- OnPropertyChanged(nameof(PropertyGrid));
- OnPropertyChanged(nameof(PushToTalk));
- OnPropertyChanged(nameof(QQGroup));
- OnPropertyChanged(nameof(RadioButton));
- OnPropertyChanged(nameof(RangeSlider));
- OnPropertyChanged(nameof(Rate));
- OnPropertyChanged(nameof(Recommendation));
- OnPropertyChanged(nameof(Register));
- OnPropertyChanged(nameof(RelativePanel));
- OnPropertyChanged(nameof(Remark));
- OnPropertyChanged(nameof(RemoveItem));
- OnPropertyChanged(nameof(RepeatButton));
- OnPropertyChanged(nameof(Reply));
- OnPropertyChanged(nameof(Repository));
- OnPropertyChanged(nameof(ResponsiveLayout));
- OnPropertyChanged(nameof(RichTextBox));
- OnPropertyChanged(nameof(RightClickHere));
- OnPropertyChanged(nameof(RunningBlock));
- OnPropertyChanged(nameof(Screenshot));
- OnPropertyChanged(nameof(ScrollViewer));
- OnPropertyChanged(nameof(SearchBar));
- OnPropertyChanged(nameof(Second));
- OnPropertyChanged(nameof(Selected));
- OnPropertyChanged(nameof(SendNotification));
- OnPropertyChanged(nameof(Shield));
- OnPropertyChanged(nameof(ShowInCurrentWindow));
- OnPropertyChanged(nameof(ShowInMainWindow));
- OnPropertyChanged(nameof(ShowRowNumber));
- OnPropertyChanged(nameof(SideMenu));
- OnPropertyChanged(nameof(Slider));
- OnPropertyChanged(nameof(SplitButton));
- OnPropertyChanged(nameof(Sprite));
- OnPropertyChanged(nameof(StartScreenshot));
- OnPropertyChanged(nameof(StaysOpen));
- OnPropertyChanged(nameof(Step));
- OnPropertyChanged(nameof(StepBar));
- OnPropertyChanged(nameof(Styles));
- OnPropertyChanged(nameof(SubTitle));
- OnPropertyChanged(nameof(Success));
- OnPropertyChanged(nameof(TabControl));
- OnPropertyChanged(nameof(Tag));
- OnPropertyChanged(nameof(Text));
- OnPropertyChanged(nameof(TextBlock));
- OnPropertyChanged(nameof(TextBox));
- OnPropertyChanged(nameof(TextDialog));
- OnPropertyChanged(nameof(TextDialogInControl));
- OnPropertyChanged(nameof(TextDialogWithTimer));
- OnPropertyChanged(nameof(TimeBar));
- OnPropertyChanged(nameof(TimePicker));
- OnPropertyChanged(nameof(Tip));
- OnPropertyChanged(nameof(Title));
- OnPropertyChanged(nameof(TitleDemoStr1));
- OnPropertyChanged(nameof(TitleDemoStr2));
- OnPropertyChanged(nameof(TitleDemoStr3));
- OnPropertyChanged(nameof(ToggleButton));
- OnPropertyChanged(nameof(ToolBar));
- OnPropertyChanged(nameof(Tools));
- OnPropertyChanged(nameof(Transfer));
- OnPropertyChanged(nameof(TransitioningContentControl));
- OnPropertyChanged(nameof(TreeView));
- OnPropertyChanged(nameof(Try2CloseApp));
- OnPropertyChanged(nameof(Type));
- OnPropertyChanged(nameof(UniformSpacingPanel));
- OnPropertyChanged(nameof(UploadFile));
- OnPropertyChanged(nameof(UploadStr));
- OnPropertyChanged(nameof(Visibility));
- OnPropertyChanged(nameof(Vsix));
- OnPropertyChanged(nameof(Warning));
- OnPropertyChanged(nameof(WaterfallPanel));
- OnPropertyChanged(nameof(Website));
- OnPropertyChanged(nameof(Window));
- }
-
- ///
- /// 查找类似 关于 的本地化字符串。
- ///
- public string About => Lang.About;
-
- ///
- /// 查找类似 添加项 的本地化字符串。
- ///
- public string AddItem => Lang.AddItem;
-
- ///
- /// 查找类似 动画路径 的本地化字符串。
- ///
- public string AnimationPath => Lang.AnimationPath;
-
- ///
- /// 查找类似 托盘图标已打开,将隐藏窗口而不是关闭程序 的本地化字符串。
- ///
- public string AppClosingTip => Lang.AppClosingTip;
-
- ///
- /// 查找类似 询问 的本地化字符串。
- ///
- public string Ask => Lang.Ask;
-
- ///
- /// 查找类似 标记 的本地化字符串。
- ///
- public string Badge => Lang.Badge;
-
- ///
- /// 查找类似 填写基本信息 的本地化字符串。
- ///
- public string BasicInfo => Lang.BasicInfo;
-
- ///
- /// 查找类似 基础布局 的本地化字符串。
- ///
- public string BasicLayout => Lang.BasicLayout;
-
- ///
- /// 查找类似 闪烁 的本地化字符串。
- ///
- public string Blink => Lang.Blink;
-
- ///
- /// 查找类似 博客 的本地化字符串。
- ///
- public string Blog => Lang.Blog;
-
- ///
- /// 查找类似 边框 的本地化字符串。
- ///
- public string Border => Lang.Border;
-
- ///
- /// 查找类似 画刷 的本地化字符串。
- ///
- public string Brush => Lang.Brush;
-
- ///
- /// 查找类似 按钮 的本地化字符串。
- ///
- public string Button => Lang.Button;
-
- ///
- /// 查找类似 自定义按钮 的本地化字符串。
- ///
- public string ButtonCustom => Lang.ButtonCustom;
-
- ///
- /// 查找类似 按钮组 的本地化字符串。
- ///
- public string ButtonGroup => Lang.ButtonGroup;
-
- ///
- /// 查找类似 日历 的本地化字符串。
- ///
- public string Calendar => Lang.Calendar;
-
- ///
- /// 查找类似 带时钟的日历 的本地化字符串。
- ///
- public string CalendarWithClock => Lang.CalendarWithClock;
-
- ///
- /// 查找类似 卡片 的本地化字符串。
- ///
- public string Card => Lang.Card;
-
- ///
- /// 查找类似 轮播 的本地化字符串。
- ///
- public string Carousel => Lang.Carousel;
-
- ///
- /// 查找类似 是否重启以更改语言? 的本地化字符串。
- ///
- public string ChangeLangAsk => Lang.ChangeLangAsk;
-
- ///
- /// 查找类似 对话气泡 的本地化字符串。
- ///
- public string ChatBubble => Lang.ChatBubble;
-
- ///
- /// 查找类似 讨论室 的本地化字符串。
- ///
- public string Chatroom => Lang.Chatroom;
-
- ///
- /// 查找类似 复选框 的本地化字符串。
- ///
- public string CheckBox => Lang.CheckBox;
-
- ///
- /// 查找类似 多选组合框 的本地化字符串。
- ///
- public string CheckComboBox => Lang.CheckComboBox;
-
- ///
- /// 查找类似 圆形布局 的本地化字符串。
- ///
- public string CirclePanel => Lang.CirclePanel;
-
- ///
- /// 查找类似 清空 的本地化字符串。
- ///
- public string Clear => Lang.Clear;
-
- ///
- /// 查找类似 点击计数 的本地化字符串。
- ///
- public string Click2Count => Lang.Click2Count;
-
- ///
- /// 查找类似 时钟 的本地化字符串。
- ///
- public string Clock => Lang.Clock;
-
- ///
- /// 查找类似 颜色拾取器 的本地化字符串。
- ///
- public string ColorPicker => Lang.ColorPicker;
-
- ///
- /// 查找类似 分栏偏移 的本地化字符串。
- ///
- public string ColumnOffset => Lang.ColumnOffset;
-
- ///
- /// 查找类似 分栏间隔 的本地化字符串。
- ///
- public string ColumnSpacing => Lang.ColumnSpacing;
-
- ///
- /// 查找类似 组合框 的本地化字符串。
- ///
- public string ComboBox => Lang.ComboBox;
-
- ///
- /// 查找类似 敬请期待 的本地化字符串。
- ///
- public string ComingSoon => Lang.ComingSoon;
-
- ///
- /// 查找类似 评论 的本地化字符串。
- ///
- public string Comment => Lang.Comment;
-
- ///
- /// 查找类似 一般 的本地化字符串。
- ///
- public string Common => Lang.Common;
-
- ///
- /// 查找类似 对比滑块 的本地化字符串。
- ///
- public string CompareSlider => Lang.CompareSlider;
-
- ///
- /// 查找类似 完成 的本地化字符串。
- ///
- public string Complete => Lang.Complete;
-
- ///
- /// 查找类似 这是内容 的本地化字符串。
- ///
- public string ContentDemoStr => Lang.ContentDemoStr;
-
- ///
- /// 查找类似 贡献者 的本地化字符串。
- ///
- public string Contributors => Lang.Contributors;
-
- ///
- /// 查找类似 控件 的本地化字符串。
- ///
- public string Controls => Lang.Controls;
-
- ///
- /// 查找类似 封面流 的本地化字符串。
- ///
- public string CoverFlow => Lang.CoverFlow;
-
- ///
- /// 查找类似 封面视图 的本地化字符串。
- ///
- public string CoverView => Lang.CoverView;
-
- ///
- /// 查找类似 危险 的本地化字符串。
- ///
- public string Danger => Lang.Danger;
-
- ///
- /// 查找类似 数据展示 的本地化字符串。
- ///
- public string DataDisplay => Lang.DataDisplay;
-
- ///
- /// 查找类似 数据录入 的本地化字符串。
- ///
- public string DataEntry => Lang.DataEntry;
-
- ///
- /// 查找类似 数据表格 的本地化字符串。
- ///
- public string DataGrid => Lang.DataGrid;
-
- ///
- /// 查找类似 日期选择器 的本地化字符串。
- ///
- public string DatePicker => Lang.DatePicker;
-
- ///
- /// 查找类似 日期时间选择器 的本地化字符串。
- ///
- public string DateTimePicker => Lang.DateTimePicker;
-
- ///
- /// 查找类似 默认 的本地化字符串。
- ///
- public string Default => Lang.Default;
-
- ///
- /// 查找类似 示例 的本地化字符串。
- ///
- public string Demo => Lang.Demo;
-
- ///
- /// 查找类似 对话框 的本地化字符串。
- ///
- public string Dialog => Lang.Dialog;
-
- ///
- /// 查找类似 对话框示例 的本地化字符串。
- ///
- public string DialogDemo => Lang.DialogDemo;
-
- ///
- /// 查找类似 分割线 的本地化字符串。
- ///
- public string Divider => Lang.Divider;
-
- ///
- /// 查找类似 中文文档 的本地化字符串。
- ///
- public string Doc_cn => Lang.Doc_cn;
-
- ///
- /// 查找类似 英文文档 的本地化字符串。
- ///
- public string Doc_en => Lang.Doc_en;
-
- ///
- /// 查找类似 文献资料 的本地化字符串。
- ///
- public string Documentation => Lang.Documentation;
-
- ///
- /// 查找类似 在这里拖拽 的本地化字符串。
- ///
- public string DragHere => Lang.DragHere;
-
- ///
- /// 查找类似 抽屉 的本地化字符串。
- ///
- public string Drawer => Lang.Drawer;
-
- ///
- /// 查找类似 效果 的本地化字符串。
- ///
- public string Effects => Lang.Effects;
-
- ///
- /// 查找类似 邮箱 的本地化字符串。
- ///
- public string Email => Lang.Email;
-
- ///
- /// 查找类似 空状态 的本地化字符串。
- ///
- public string Empty => Lang.Empty;
-
- ///
- /// 查找类似 错误 的本地化字符串。
- ///
- public string Error => Lang.Error;
-
- ///
- /// 查找类似 退出 的本地化字符串。
- ///
- public string Exit => Lang.Exit;
-
- ///
- /// 查找类似 展开框 的本地化字符串。
- ///
- public string Expander => Lang.Expander;
-
- ///
- /// 查找类似 严重 的本地化字符串。
- ///
- public string Fatal => Lang.Fatal;
-
- ///
- /// 查找类似 反馈 的本地化字符串。
- ///
- public string Feedback => Lang.Feedback;
-
- ///
- /// 查找类似 弹性盒子 的本地化字符串。
- ///
- public string FlexPanel => Lang.FlexPanel;
-
- ///
- /// 查找类似 翻页时钟 的本地化字符串。
- ///
- public string FlipClock => Lang.FlipClock;
-
- ///
- /// 查找类似 漂浮块 的本地化字符串。
- ///
- public string FloatingBlock => Lang.FloatingBlock;
-
- ///
- /// 查找类似 流文档 的本地化字符串。
- ///
- public string FlowDocument => Lang.FlowDocument;
-
- ///
- /// 查找类似 流文档单页视图 的本地化字符串。
- ///
- public string FlowDocumentPageViewer => Lang.FlowDocumentPageViewer;
-
- ///
- /// 查找类似 流文档查看器 的本地化字符串。
- ///
- public string FlowDocumentReader => Lang.FlowDocumentReader;
-
- ///
- /// 查找类似 流文档滚动视图 的本地化字符串。
- ///
- public string FlowDocumentScrollViewer => Lang.FlowDocumentScrollViewer;
-
- ///
- /// 查找类似 导航框架 的本地化字符串。
- ///
- public string Frame => Lang.Frame;
-
- ///
- /// 查找类似 几何形状 的本地化字符串。
- ///
- public string Geometry => Lang.Geometry;
-
- ///
- /// 查找类似 Gif图片 的本地化字符串。
- ///
- public string GifImage => Lang.GifImage;
-
- ///
- /// 查找类似 回到顶部 的本地化字符串。
- ///
- public string GotoTop => Lang.GotoTop;
-
- ///
- /// 查找类似 头像 的本地化字符串。
- ///
- public string Gravatar => Lang.Gravatar;
-
- ///
- /// 查找类似 栅格 的本地化字符串。
- ///
- public string Grid => Lang.Grid;
-
- ///
- /// 查找类似 分组框 的本地化字符串。
- ///
- public string GroupBox => Lang.GroupBox;
-
- ///
- /// 查找类似 组数 的本地化字符串。
- ///
- public string Groups => Lang.Groups;
-
- ///
- /// 查找类似 信息通知 的本地化字符串。
- ///
- public string Growl => Lang.Growl;
-
- ///
- /// 查找类似 检测到有新版本!是否更新? 的本地化字符串。
- ///
- public string GrowlAsk => Lang.GrowlAsk;
-
- ///
- /// 查找类似 消息通知示例 的本地化字符串。
- ///
- public string GrowlDemo => Lang.GrowlDemo;
-
- ///
- /// 查找类似 连接失败,请检查网络! 的本地化字符串。
- ///
- public string GrowlError => Lang.GrowlError;
-
- ///
- /// 查找类似 程序已崩溃~~~ 的本地化字符串。
- ///
- public string GrowlFatal => Lang.GrowlFatal;
-
- ///
- /// 查找类似 今天的天气不错~~~ 的本地化字符串。
- ///
- public string GrowlInfo => Lang.GrowlInfo;
-
- ///
- /// 查找类似 文件保存成功! 的本地化字符串。
- ///
- public string GrowlSuccess => Lang.GrowlSuccess;
-
- ///
- /// 查找类似 磁盘空间快要满了! 的本地化字符串。
- ///
- public string GrowlWarning => Lang.GrowlWarning;
-
- ///
- /// 查找类似 阴影画笔生成器 的本地化字符串。
- ///
- public string HatchBrushGenerator => Lang.HatchBrushGenerator;
-
- ///
- /// 查找类似 蜂窝布局 的本地化字符串。
- ///
- public string HoneycombPanel => Lang.HoneycombPanel;
-
- ///
- /// 查找类似 混合布局 的本地化字符串。
- ///
- public string HybridLayout => Lang.HybridLayout;
-
- ///
- /// 查找类似 忽略 的本地化字符串。
- ///
- public string Ignore => Lang.Ignore;
-
- ///
- /// 查找类似 图片块 的本地化字符串。
- ///
- public string ImageBlock => Lang.ImageBlock;
-
- ///
- /// 查找类似 图片浏览器 的本地化字符串。
- ///
- public string ImageBrowser => Lang.ImageBrowser;
-
- ///
- /// 查找类似 图片选择器 的本地化字符串。
- ///
- public string ImageSelector => Lang.ImageSelector;
-
- ///
- /// 查找类似 索引 的本地化字符串。
- ///
- public string Index => Lang.Index;
-
- ///
- /// 查找类似 信息 的本地化字符串。
- ///
- public string Info => Lang.Info;
-
- ///
- /// 查找类似 交互 的本地化字符串。
- ///
- public string Interacting => Lang.Interacting;
-
- ///
- /// 查找类似 可交互对话框 的本地化字符串。
- ///
- public string InteractiveDialog => Lang.InteractiveDialog;
-
- ///
- /// 查找类似 不是手机号码 的本地化字符串。
- ///
- public string IsNotPhone => Lang.IsNotPhone;
-
- ///
- /// 查找类似 标签 的本地化字符串。
- ///
- public string Label => Lang.Label;
-
- ///
- /// 查找类似 查找类似 {0} 的本地化字符串。 的本地化字符串。
- ///
- public string LangComment => Lang.LangComment;
-
- ///
- /// 查找类似 布局 的本地化字符串。
- ///
- public string Layout => Lang.Layout;
-
- ///
- /// 查找类似 列表框 的本地化字符串。
- ///
- public string ListBox => Lang.ListBox;
-
- ///
- /// 查找类似 列表视图 的本地化字符串。
- ///
- public string ListView => Lang.ListView;
-
- ///
- /// 查找类似 加载条 的本地化字符串。
- ///
- public string Loading => Lang.Loading;
-
- ///
- /// 查找类似 放大镜 的本地化字符串。
- ///
- public string Magnifier => Lang.Magnifier;
-
- ///
- /// 查找类似 菜单 的本地化字符串。
- ///
- public string Menu => Lang.Menu;
-
- ///
- /// 查找类似 消息框 的本地化字符串。
- ///
- public string MessageBox => Lang.MessageBox;
-
- ///
- /// 查找类似 杂项 的本地化字符串。
- ///
- public string Misc => Lang.Misc;
-
- ///
- /// 查找类似 的本地化字符串。
- ///
- public string Morphing_Animation => Lang.Morphing_Animation;
-
- ///
- /// 查找类似 名称 的本地化字符串。
- ///
- public string Name => Lang.Name;
-
- ///
- /// 查找类似 导航 的本地化字符串。
- ///
- public string Navigation => Lang.Navigation;
-
- ///
- /// 查找类似 新建窗口 的本地化字符串。
- ///
- public string NewWindow => Lang.NewWindow;
-
- ///
- /// 查找类似 下一步 的本地化字符串。
- ///
- public string Next => Lang.Next;
-
- ///
- /// 查找类似 桌面通知 的本地化字符串。
- ///
- public string Notification => Lang.Notification;
-
- ///
- /// 查找类似 托盘图标 的本地化字符串。
- ///
- public string NotifyIcon => Lang.NotifyIcon;
-
- ///
- /// 查找类似 数值选择控件 的本地化字符串。
- ///
- public string NumericUpDown => Lang.NumericUpDown;
-
- ///
- /// 查找类似 关 的本地化字符串。
- ///
- public string Off => Lang.Off;
-
- ///
- /// 查找类似 确定 的本地化字符串。
- ///
- public string Ok => Lang.Ok;
-
- ///
- /// 查找类似 开 的本地化字符串。
- ///
- public string On => Lang.On;
-
- ///
- /// 查找类似 点击打开背景模糊窗口 的本地化字符串。
- ///
- public string OpenBlurWindow => Lang.OpenBlurWindow;
-
- ///
- /// 查找类似 点击打开常规窗口 的本地化字符串。
- ///
- public string OpenCommonWindow => Lang.OpenCommonWindow;
-
- ///
- /// 查找类似 点击打开自定义内容窗口 的本地化字符串。
- ///
- public string OpenCustomContentWindow => Lang.OpenCustomContentWindow;
-
- ///
- /// 查找类似 点击打开自定义消息窗口 的本地化字符串。
- ///
- public string OpenCustomMessageWindow => Lang.OpenCustomMessageWindow;
-
- ///
- /// 查找类似 点击打开自定义非客户端区域窗口 的本地化字符串。
- ///
- public string OpenCustomNonClientAreaWindow => Lang.OpenCustomNonClientAreaWindow;
-
- ///
- /// 查找类似 点击打开辉光窗口 的本地化字符串。
- ///
- public string OpenGlowWindow => Lang.OpenGlowWindow;
-
- ///
- /// 查找类似 点击打开图片浏览器 的本地化字符串。
- ///
- public string OpenImageBrowser => Lang.OpenImageBrowser;
-
- ///
- /// 查找类似 点击打开消息窗口 的本地化字符串。
- ///
- public string OpenMessageWindow => Lang.OpenMessageWindow;
-
- ///
- /// 查找类似 点击打开鼠标跟随窗口 的本地化字符串。
- ///
- public string OpenMouseFollowWindow => Lang.OpenMouseFollowWindow;
-
- ///
- /// 查找类似 点击打开原生常规窗口 的本地化字符串。
- ///
- public string OpenNativeCommonWindow => Lang.OpenNativeCommonWindow;
-
- ///
- /// 查找类似 点击打开导航窗口 的本地化字符串。
- ///
- public string OpenNavigationWindow => Lang.OpenNavigationWindow;
-
- ///
- /// 查找类似 打开无非客户端区域可拖拽窗口 的本地化字符串。
- ///
- public string OpenNoNonClientAreaDragableWindow => Lang.OpenNoNonClientAreaDragableWindow;
-
- ///
- /// 查找类似 打开面板 的本地化字符串。
- ///
- public string OpenPanel => Lang.OpenPanel;
-
- ///
- /// 查找类似 打开精灵 的本地化字符串。
- ///
- public string OpenSprite => Lang.OpenSprite;
-
- ///
- /// 查找类似 点击打开触摸拖动窗口 的本地化字符串。
- ///
- public string OpenTouchDragMoveWindow => Lang.OpenTouchDragMoveWindow;
-
- ///
- /// 查找类似 轮廓文本 的本地化字符串。
- ///
- public string OutlineText => Lang.OutlineText;
-
- ///
- /// 查找类似 页码条 的本地化字符串。
- ///
- public string Pagination => Lang.Pagination;
-
- ///
- /// 查找类似 密码框 的本地化字符串。
- ///
- public string PasswordBox => Lang.PasswordBox;
-
- ///
- /// 查找类似 PIN码框 的本地化字符串。
- ///
- public string PinBox => Lang.PinBox;
-
- ///
- /// 查找类似 请输入... 的本地化字符串。
- ///
- public string PleaseInput => Lang.PleaseInput;
-
- ///
- /// 查找类似 请稍后... 的本地化字符串。
- ///
- public string PleaseWait => Lang.PleaseWait;
-
- ///
- /// 查找类似 请输入内容 的本地化字符串。
- ///
- public string PlsEnterContent => Lang.PlsEnterContent;
-
- ///
- /// 查找类似 请输入邮箱 的本地化字符串。
- ///
- public string PlsEnterEmail => Lang.PlsEnterEmail;
-
- ///
- /// 查找类似 请输入关键字 的本地化字符串。
- ///
- public string PlsEnterKey => Lang.PlsEnterKey;
-
- ///
- /// 查找类似 气泡提示 的本地化字符串。
- ///
- public string Poptip => Lang.Poptip;
-
- ///
- /// 查找类似 上左;上边;上右;右上;右边;右下;下右;下边;下左;左下;左边;左上 的本地化字符串。
- ///
- public string PoptipPositionStr => Lang.PoptipPositionStr;
-
- ///
- /// 查找类似 实用例子 的本地化字符串。
- ///
- public string PracticalDemos => Lang.PracticalDemos;
-
- ///
- /// 查找类似 上一步 的本地化字符串。
- ///
- public string Prev => Lang.Prev;
-
- ///
- /// 查找类似 预览滑块 的本地化字符串。
- ///
- public string PreviewSlider => Lang.PreviewSlider;
-
- ///
- /// 查找类似 主要 的本地化字符串。
- ///
- public string Primary => Lang.Primary;
-
- ///
- /// 查找类似 进度条 的本地化字符串。
- ///
- public string ProgressBar => Lang.ProgressBar;
-
- ///
- /// 查找类似 进度按钮 的本地化字符串。
- ///
- public string ProgressButton => Lang.ProgressButton;
-
- ///
- /// 查找类似 项目 的本地化字符串。
- ///
- public string Project => Lang.Project;
-
- ///
- /// 查找类似 属性编辑器 的本地化字符串。
- ///
- public string PropertyGrid => Lang.PropertyGrid;
-
- ///
- /// 查找类似 按住说话 的本地化字符串。
- ///
- public string PushToTalk => Lang.PushToTalk;
-
- ///
- /// 查找类似 QQ群 的本地化字符串。
- ///
- public string QQGroup => Lang.QQGroup;
-
- ///
- /// 查找类似 单选按钮 的本地化字符串。
- ///
- public string RadioButton => Lang.RadioButton;
-
- ///
- /// 查找类似 范围滑块 的本地化字符串。
- ///
- public string RangeSlider => Lang.RangeSlider;
-
- ///
- /// 查找类似 评分 的本地化字符串。
- ///
- public string Rate => Lang.Rate;
-
- ///
- /// 查找类似 群友推荐 的本地化字符串。
- ///
- public string Recommendation => Lang.Recommendation;
-
- ///
- /// 查找类似 注册 的本地化字符串。
- ///
- public string Register => Lang.Register;
-
- ///
- /// 查找类似 相对布局 的本地化字符串。
- ///
- public string RelativePanel => Lang.RelativePanel;
-
- ///
- /// 查找类似 备注 的本地化字符串。
- ///
- public string Remark => Lang.Remark;
-
- ///
- /// 查找类似 删除项 的本地化字符串。
- ///
- public string RemoveItem => Lang.RemoveItem;
-
- ///
- /// 查找类似 重复按钮 的本地化字符串。
- ///
- public string RepeatButton => Lang.RepeatButton;
-
- ///
- /// 查找类似 回复 的本地化字符串。
- ///
- public string Reply => Lang.Reply;
-
- ///
- /// 查找类似 代码仓库 的本地化字符串。
- ///
- public string Repository => Lang.Repository;
-
- ///
- /// 查找类似 响应式布局 的本地化字符串。
- ///
- public string ResponsiveLayout => Lang.ResponsiveLayout;
-
- ///
- /// 查找类似 富文本框 的本地化字符串。
- ///
- public string RichTextBox => Lang.RichTextBox;
-
- ///
- /// 查找类似 在这里右击 的本地化字符串。
- ///
- public string RightClickHere => Lang.RightClickHere;
-
- ///
- /// 查找类似 滚动块 的本地化字符串。
- ///
- public string RunningBlock => Lang.RunningBlock;
-
- ///
- /// 查找类似 截图 的本地化字符串。
- ///
- public string Screenshot => Lang.Screenshot;
-
- ///
- /// 查找类似 滚动视图 的本地化字符串。
- ///
- public string ScrollViewer => Lang.ScrollViewer;
-
- ///
- /// 查找类似 搜索栏 的本地化字符串。
- ///
- public string SearchBar => Lang.SearchBar;
-
- ///
- /// 查找类似 秒 的本地化字符串。
- ///
- public string Second => Lang.Second;
-
- ///
- /// 查找类似 选中 的本地化字符串。
- ///
- public string Selected => Lang.Selected;
-
- ///
- /// 查找类似 发送通知 的本地化字符串。
- ///
- public string SendNotification => Lang.SendNotification;
-
- ///
- /// 查找类似 徽章 的本地化字符串。
- ///
- public string Shield => Lang.Shield;
-
- ///
- /// 查找类似 在当前窗口显示 的本地化字符串。
- ///
- public string ShowInCurrentWindow => Lang.ShowInCurrentWindow;
-
- ///
- /// 查找类似 在主窗口显示 的本地化字符串。
- ///
- public string ShowInMainWindow => Lang.ShowInMainWindow;
-
- ///
- /// 查找类似 显示行号 的本地化字符串。
- ///
- public string ShowRowNumber => Lang.ShowRowNumber;
-
- ///
- /// 查找类似 侧边菜单 的本地化字符串。
- ///
- public string SideMenu => Lang.SideMenu;
-
- ///
- /// 查找类似 滑块 的本地化字符串。
- ///
- public string Slider => Lang.Slider;
-
- ///
- /// 查找类似 分割按钮 的本地化字符串。
- ///
- public string SplitButton => Lang.SplitButton;
-
- ///
- /// 查找类似 精灵 的本地化字符串。
- ///
- public string Sprite => Lang.Sprite;
-
- ///
- /// 查找类似 开始截图 的本地化字符串。
- ///
- public string StartScreenshot => Lang.StartScreenshot;
-
- ///
- /// 查找类似 保持打开 的本地化字符串。
- ///
- public string StaysOpen => Lang.StaysOpen;
-
- ///
- /// 查找类似 步骤 的本地化字符串。
- ///
- public string Step => Lang.Step;
-
- ///
- /// 查找类似 步骤条 的本地化字符串。
- ///
- public string StepBar => Lang.StepBar;
-
- ///
- /// 查找类似 样式模板 的本地化字符串。
- ///
- public string Styles => Lang.Styles;
-
- ///
- /// 查找类似 子标题 的本地化字符串。
- ///
- public string SubTitle => Lang.SubTitle;
-
- ///
- /// 查找类似 成功 的本地化字符串。
- ///
- public string Success => Lang.Success;
-
- ///
- /// 查找类似 选项卡控件 的本地化字符串。
- ///
- public string TabControl => Lang.TabControl;
-
- ///
- /// 查找类似 标签 的本地化字符串。
- ///
- public string Tag => Lang.Tag;
-
- ///
- /// 查找类似 正文 的本地化字符串。
- ///
- public string Text => Lang.Text;
-
- ///
- /// 查找类似 文本块 的本地化字符串。
- ///
- public string TextBlock => Lang.TextBlock;
-
- ///
- /// 查找类似 文本框 的本地化字符串。
- ///
- public string TextBox => Lang.TextBox;
-
- ///
- /// 查找类似 文本对话框 的本地化字符串。
- ///
- public string TextDialog => Lang.TextDialog;
-
- ///
- /// 查找类似 文本对话框(控件中) 的本地化字符串。
- ///
- public string TextDialogInControl => Lang.TextDialogInControl;
-
- ///
- /// 查找类似 文本对话框,带计时器 的本地化字符串。
- ///
- public string TextDialogWithTimer => Lang.TextDialogWithTimer;
-
- ///
- /// 查找类似 时间条 的本地化字符串。
- ///
- public string TimeBar => Lang.TimeBar;
-
- ///
- /// 查找类似 时间选择器 的本地化字符串。
- ///
- public string TimePicker => Lang.TimePicker;
-
- ///
- /// 查找类似 提示 的本地化字符串。
- ///
- public string Tip => Lang.Tip;
-
- ///
- /// 查找类似 标题 的本地化字符串。
- ///
- public string Title => Lang.Title;
-
- ///
- /// 查找类似 这是标题 的本地化字符串。
- ///
- public string TitleDemoStr1 => Lang.TitleDemoStr1;
-
- ///
- /// 查找类似 此项必填 的本地化字符串。
- ///
- public string TitleDemoStr2 => Lang.TitleDemoStr2;
-
- ///
- /// 查找类似 标题在左侧 的本地化字符串。
- ///
- public string TitleDemoStr3 => Lang.TitleDemoStr3;
-
- ///
- /// 查找类似 切换按钮 的本地化字符串。
- ///
- public string ToggleButton => Lang.ToggleButton;
-
- ///
- /// 查找类似 工具条 的本地化字符串。
- ///
- public string ToolBar => Lang.ToolBar;
-
- ///
- /// 查找类似 工具 的本地化字符串。
- ///
- public string Tools => Lang.Tools;
-
- ///
- /// 查找类似 穿梭框 的本地化字符串。
- ///
- public string Transfer => Lang.Transfer;
-
- ///
- /// 查找类似 内容过渡控件 的本地化字符串。
- ///
- public string TransitioningContentControl => Lang.TransitioningContentControl;
-
- ///
- /// 查找类似 树视图 的本地化字符串。
- ///
- public string TreeView => Lang.TreeView;
-
- ///
- /// 查找类似 试试关闭程序吧? 的本地化字符串。
- ///
- public string Try2CloseApp => Lang.Try2CloseApp;
-
- ///
- /// 查找类似 类型 的本地化字符串。
- ///
- public string Type => Lang.Type;
-
- ///
- /// 查找类似 等间距布局 的本地化字符串。
- ///
- public string UniformSpacingPanel => Lang.UniformSpacingPanel;
-
- ///
- /// 查找类似 上传文件 的本地化字符串。
- ///
- public string UploadFile => Lang.UploadFile;
-
- ///
- /// 查找类似 上传;上传中 的本地化字符串。
- ///
- public string UploadStr => Lang.UploadStr;
-
- ///
- /// 查找类似 可见性 的本地化字符串。
- ///
- public string Visibility => Lang.Visibility;
-
- ///
- /// 查找类似 VS 插件 的本地化字符串。
- ///
- public string Vsix => Lang.Vsix;
-
- ///
- /// 查找类似 警告 的本地化字符串。
- ///
- public string Warning => Lang.Warning;
-
- ///
- /// 查找类似 瀑布流 的本地化字符串。
- ///
- public string WaterfallPanel => Lang.WaterfallPanel;
-
- ///
- /// 查找类似 网站 的本地化字符串。
- ///
- public string Website => Lang.Website;
-
- ///
- /// 查找类似 窗口 的本地化字符串。
- ///
- public string Window => Lang.Window;
-
-
- public event PropertyChangedEventHandler PropertyChanged;
-
- protected virtual void OnPropertyChanged(string propertyName) =>
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
- public class LangKeys
+ public static string GetLang(string key)
{
- ///
- /// 查找类似 关于 的本地化字符串。
- ///
- public static string About = nameof(About);
-
- ///
- /// 查找类似 添加项 的本地化字符串。
- ///
- public static string AddItem = nameof(AddItem);
-
- ///
- /// 查找类似 动画路径 的本地化字符串。
- ///
- public static string AnimationPath = nameof(AnimationPath);
-
- ///
- /// 查找类似 托盘图标已打开,将隐藏窗口而不是关闭程序 的本地化字符串。
- ///
- public static string AppClosingTip = nameof(AppClosingTip);
-
- ///
- /// 查找类似 询问 的本地化字符串。
- ///
- public static string Ask = nameof(Ask);
-
- ///
- /// 查找类似 标记 的本地化字符串。
- ///
- public static string Badge = nameof(Badge);
-
- ///
- /// 查找类似 填写基本信息 的本地化字符串。
- ///
- public static string BasicInfo = nameof(BasicInfo);
-
- ///
- /// 查找类似 基础布局 的本地化字符串。
- ///
- public static string BasicLayout = nameof(BasicLayout);
-
- ///
- /// 查找类似 闪烁 的本地化字符串。
- ///
- public static string Blink = nameof(Blink);
-
- ///
- /// 查找类似 博客 的本地化字符串。
- ///
- public static string Blog = nameof(Blog);
-
- ///
- /// 查找类似 边框 的本地化字符串。
- ///
- public static string Border = nameof(Border);
-
- ///
- /// 查找类似 画刷 的本地化字符串。
- ///
- public static string Brush = nameof(Brush);
-
- ///
- /// 查找类似 按钮 的本地化字符串。
- ///
- public static string Button = nameof(Button);
-
- ///
- /// 查找类似 自定义按钮 的本地化字符串。
- ///
- public static string ButtonCustom = nameof(ButtonCustom);
-
- ///
- /// 查找类似 按钮组 的本地化字符串。
- ///
- public static string ButtonGroup = nameof(ButtonGroup);
-
- ///
- /// 查找类似 日历 的本地化字符串。
- ///
- public static string Calendar = nameof(Calendar);
-
- ///
- /// 查找类似 带时钟的日历 的本地化字符串。
- ///
- public static string CalendarWithClock = nameof(CalendarWithClock);
-
- ///
- /// 查找类似 卡片 的本地化字符串。
- ///
- public static string Card = nameof(Card);
-
- ///
- /// 查找类似 轮播 的本地化字符串。
- ///
- public static string Carousel = nameof(Carousel);
-
- ///
- /// 查找类似 是否重启以更改语言? 的本地化字符串。
- ///
- public static string ChangeLangAsk = nameof(ChangeLangAsk);
-
- ///
- /// 查找类似 对话气泡 的本地化字符串。
- ///
- public static string ChatBubble = nameof(ChatBubble);
-
- ///
- /// 查找类似 讨论室 的本地化字符串。
- ///
- public static string Chatroom = nameof(Chatroom);
-
- ///
- /// 查找类似 复选框 的本地化字符串。
- ///
- public static string CheckBox = nameof(CheckBox);
-
- ///
- /// 查找类似 多选组合框 的本地化字符串。
- ///
- public static string CheckComboBox = nameof(CheckComboBox);
-
- ///
- /// 查找类似 圆形布局 的本地化字符串。
- ///
- public static string CirclePanel = nameof(CirclePanel);
-
- ///
- /// 查找类似 清空 的本地化字符串。
- ///
- public static string Clear = nameof(Clear);
-
- ///
- /// 查找类似 点击计数 的本地化字符串。
- ///
- public static string Click2Count = nameof(Click2Count);
-
- ///
- /// 查找类似 时钟 的本地化字符串。
- ///
- public static string Clock = nameof(Clock);
-
- ///
- /// 查找类似 颜色拾取器 的本地化字符串。
- ///
- public static string ColorPicker = nameof(ColorPicker);
-
- ///
- /// 查找类似 分栏偏移 的本地化字符串。
- ///
- public static string ColumnOffset = nameof(ColumnOffset);
-
- ///
- /// 查找类似 分栏间隔 的本地化字符串。
- ///
- public static string ColumnSpacing = nameof(ColumnSpacing);
-
- ///
- /// 查找类似 组合框 的本地化字符串。
- ///
- public static string ComboBox = nameof(ComboBox);
-
- ///
- /// 查找类似 敬请期待 的本地化字符串。
- ///
- public static string ComingSoon = nameof(ComingSoon);
-
- ///
- /// 查找类似 评论 的本地化字符串。
- ///
- public static string Comment = nameof(Comment);
-
- ///
- /// 查找类似 一般 的本地化字符串。
- ///
- public static string Common = nameof(Common);
-
- ///
- /// 查找类似 对比滑块 的本地化字符串。
- ///
- public static string CompareSlider = nameof(CompareSlider);
-
- ///
- /// 查找类似 完成 的本地化字符串。
- ///
- public static string Complete = nameof(Complete);
-
- ///
- /// 查找类似 这是内容 的本地化字符串。
- ///
- public static string ContentDemoStr = nameof(ContentDemoStr);
-
- ///
- /// 查找类似 贡献者 的本地化字符串。
- ///
- public static string Contributors = nameof(Contributors);
-
- ///
- /// 查找类似 控件 的本地化字符串。
- ///
- public static string Controls = nameof(Controls);
-
- ///
- /// 查找类似 封面流 的本地化字符串。
- ///
- public static string CoverFlow = nameof(CoverFlow);
-
- ///
- /// 查找类似 封面视图 的本地化字符串。
- ///
- public static string CoverView = nameof(CoverView);
-
- ///
- /// 查找类似 危险 的本地化字符串。
- ///
- public static string Danger = nameof(Danger);
-
- ///
- /// 查找类似 数据展示 的本地化字符串。
- ///
- public static string DataDisplay = nameof(DataDisplay);
-
- ///
- /// 查找类似 数据录入 的本地化字符串。
- ///
- public static string DataEntry = nameof(DataEntry);
-
- ///
- /// 查找类似 数据表格 的本地化字符串。
- ///
- public static string DataGrid = nameof(DataGrid);
-
- ///
- /// 查找类似 日期选择器 的本地化字符串。
- ///
- public static string DatePicker = nameof(DatePicker);
-
- ///
- /// 查找类似 日期时间选择器 的本地化字符串。
- ///
- public static string DateTimePicker = nameof(DateTimePicker);
-
- ///
- /// 查找类似 默认 的本地化字符串。
- ///
- public static string Default = nameof(Default);
-
- ///
- /// 查找类似 示例 的本地化字符串。
- ///
- public static string Demo = nameof(Demo);
-
- ///
- /// 查找类似 对话框 的本地化字符串。
- ///
- public static string Dialog = nameof(Dialog);
-
- ///
- /// 查找类似 对话框示例 的本地化字符串。
- ///
- public static string DialogDemo = nameof(DialogDemo);
-
- ///
- /// 查找类似 分割线 的本地化字符串。
- ///
- public static string Divider = nameof(Divider);
-
- ///
- /// 查找类似 中文文档 的本地化字符串。
- ///
- public static string Doc_cn = nameof(Doc_cn);
-
- ///
- /// 查找类似 英文文档 的本地化字符串。
- ///
- public static string Doc_en = nameof(Doc_en);
-
- ///
- /// 查找类似 文献资料 的本地化字符串。
- ///
- public static string Documentation = nameof(Documentation);
-
- ///
- /// 查找类似 在这里拖拽 的本地化字符串。
- ///
- public static string DragHere = nameof(DragHere);
-
- ///
- /// 查找类似 抽屉 的本地化字符串。
- ///
- public static string Drawer = nameof(Drawer);
-
- ///
- /// 查找类似 效果 的本地化字符串。
- ///
- public static string Effects = nameof(Effects);
-
- ///
- /// 查找类似 邮箱 的本地化字符串。
- ///
- public static string Email = nameof(Email);
-
- ///
- /// 查找类似 空状态 的本地化字符串。
- ///
- public static string Empty = nameof(Empty);
-
- ///
- /// 查找类似 错误 的本地化字符串。
- ///
- public static string Error = nameof(Error);
-
- ///
- /// 查找类似 退出 的本地化字符串。
- ///
- public static string Exit = nameof(Exit);
-
- ///
- /// 查找类似 展开框 的本地化字符串。
- ///
- public static string Expander = nameof(Expander);
-
- ///
- /// 查找类似 严重 的本地化字符串。
- ///
- public static string Fatal = nameof(Fatal);
-
- ///
- /// 查找类似 反馈 的本地化字符串。
- ///
- public static string Feedback = nameof(Feedback);
-
- ///
- /// 查找类似 弹性盒子 的本地化字符串。
- ///
- public static string FlexPanel = nameof(FlexPanel);
-
- ///
- /// 查找类似 翻页时钟 的本地化字符串。
- ///
- public static string FlipClock = nameof(FlipClock);
-
- ///
- /// 查找类似 漂浮块 的本地化字符串。
- ///
- public static string FloatingBlock = nameof(FloatingBlock);
-
- ///
- /// 查找类似 流文档 的本地化字符串。
- ///
- public static string FlowDocument = nameof(FlowDocument);
-
- ///
- /// 查找类似 流文档单页视图 的本地化字符串。
- ///
- public static string FlowDocumentPageViewer = nameof(FlowDocumentPageViewer);
-
- ///
- /// 查找类似 流文档查看器 的本地化字符串。
- ///
- public static string FlowDocumentReader = nameof(FlowDocumentReader);
-
- ///
- /// 查找类似 流文档滚动视图 的本地化字符串。
- ///
- public static string FlowDocumentScrollViewer = nameof(FlowDocumentScrollViewer);
-
- ///
- /// 查找类似 导航框架 的本地化字符串。
- ///
- public static string Frame = nameof(Frame);
-
- ///
- /// 查找类似 几何形状 的本地化字符串。
- ///
- public static string Geometry = nameof(Geometry);
-
- ///
- /// 查找类似 Gif图片 的本地化字符串。
- ///
- public static string GifImage = nameof(GifImage);
-
- ///
- /// 查找类似 回到顶部 的本地化字符串。
- ///
- public static string GotoTop = nameof(GotoTop);
-
- ///
- /// 查找类似 头像 的本地化字符串。
- ///
- public static string Gravatar = nameof(Gravatar);
-
- ///
- /// 查找类似 栅格 的本地化字符串。
- ///
- public static string Grid = nameof(Grid);
-
- ///
- /// 查找类似 分组框 的本地化字符串。
- ///
- public static string GroupBox = nameof(GroupBox);
-
- ///
- /// 查找类似 组数 的本地化字符串。
- ///
- public static string Groups = nameof(Groups);
-
- ///
- /// 查找类似 信息通知 的本地化字符串。
- ///
- public static string Growl = nameof(Growl);
-
- ///
- /// 查找类似 检测到有新版本!是否更新? 的本地化字符串。
- ///
- public static string GrowlAsk = nameof(GrowlAsk);
-
- ///
- /// 查找类似 消息通知示例 的本地化字符串。
- ///
- public static string GrowlDemo = nameof(GrowlDemo);
-
- ///
- /// 查找类似 连接失败,请检查网络! 的本地化字符串。
- ///
- public static string GrowlError = nameof(GrowlError);
-
- ///
- /// 查找类似 程序已崩溃~~~ 的本地化字符串。
- ///
- public static string GrowlFatal = nameof(GrowlFatal);
-
- ///
- /// 查找类似 今天的天气不错~~~ 的本地化字符串。
- ///
- public static string GrowlInfo = nameof(GrowlInfo);
-
- ///
- /// 查找类似 文件保存成功! 的本地化字符串。
- ///
- public static string GrowlSuccess = nameof(GrowlSuccess);
-
- ///
- /// 查找类似 磁盘空间快要满了! 的本地化字符串。
- ///
- public static string GrowlWarning = nameof(GrowlWarning);
-
- ///
- /// 查找类似 阴影画笔生成器 的本地化字符串。
- ///
- public static string HatchBrushGenerator = nameof(HatchBrushGenerator);
-
- ///
- /// 查找类似 蜂窝布局 的本地化字符串。
- ///
- public static string HoneycombPanel = nameof(HoneycombPanel);
-
- ///
- /// 查找类似 混合布局 的本地化字符串。
- ///
- public static string HybridLayout = nameof(HybridLayout);
-
- ///
- /// 查找类似 忽略 的本地化字符串。
- ///
- public static string Ignore = nameof(Ignore);
-
- ///
- /// 查找类似 图片块 的本地化字符串。
- ///
- public static string ImageBlock = nameof(ImageBlock);
-
- ///
- /// 查找类似 图片浏览器 的本地化字符串。
- ///
- public static string ImageBrowser = nameof(ImageBrowser);
-
- ///
- /// 查找类似 图片选择器 的本地化字符串。
- ///
- public static string ImageSelector = nameof(ImageSelector);
-
- ///
- /// 查找类似 索引 的本地化字符串。
- ///
- public static string Index = nameof(Index);
-
- ///
- /// 查找类似 信息 的本地化字符串。
- ///
- public static string Info = nameof(Info);
-
- ///
- /// 查找类似 交互 的本地化字符串。
- ///
- public static string Interacting = nameof(Interacting);
-
- ///
- /// 查找类似 可交互对话框 的本地化字符串。
- ///
- public static string InteractiveDialog = nameof(InteractiveDialog);
-
- ///
- /// 查找类似 不是手机号码 的本地化字符串。
- ///
- public static string IsNotPhone = nameof(IsNotPhone);
-
- ///
- /// 查找类似 标签 的本地化字符串。
- ///
- public static string Label = nameof(Label);
-
- ///
- /// 查找类似 查找类似 {0} 的本地化字符串。 的本地化字符串。
- ///
- public static string LangComment = nameof(LangComment);
-
- ///
- /// 查找类似 布局 的本地化字符串。
- ///
- public static string Layout = nameof(Layout);
-
- ///
- /// 查找类似 列表框 的本地化字符串。
- ///
- public static string ListBox = nameof(ListBox);
-
- ///
- /// 查找类似 列表视图 的本地化字符串。
- ///
- public static string ListView = nameof(ListView);
-
- ///
- /// 查找类似 加载条 的本地化字符串。
- ///
- public static string Loading = nameof(Loading);
-
- ///
- /// 查找类似 放大镜 的本地化字符串。
- ///
- public static string Magnifier = nameof(Magnifier);
-
- ///
- /// 查找类似 菜单 的本地化字符串。
- ///
- public static string Menu = nameof(Menu);
-
- ///
- /// 查找类似 消息框 的本地化字符串。
- ///
- public static string MessageBox = nameof(MessageBox);
-
- ///
- /// 查找类似 杂项 的本地化字符串。
- ///
- public static string Misc = nameof(Misc);
-
- ///
- /// 查找类似 的本地化字符串。
- ///
- public static string Morphing_Animation = nameof(Morphing_Animation);
-
- ///
- /// 查找类似 名称 的本地化字符串。
- ///
- public static string Name = nameof(Name);
-
- ///
- /// 查找类似 导航 的本地化字符串。
- ///
- public static string Navigation = nameof(Navigation);
-
- ///
- /// 查找类似 新建窗口 的本地化字符串。
- ///
- public static string NewWindow = nameof(NewWindow);
-
- ///
- /// 查找类似 下一步 的本地化字符串。
- ///
- public static string Next = nameof(Next);
-
- ///
- /// 查找类似 桌面通知 的本地化字符串。
- ///
- public static string Notification = nameof(Notification);
-
- ///
- /// 查找类似 托盘图标 的本地化字符串。
- ///
- public static string NotifyIcon = nameof(NotifyIcon);
-
- ///
- /// 查找类似 数值选择控件 的本地化字符串。
- ///
- public static string NumericUpDown = nameof(NumericUpDown);
-
- ///
- /// 查找类似 关 的本地化字符串。
- ///
- public static string Off = nameof(Off);
-
- ///
- /// 查找类似 确定 的本地化字符串。
- ///
- public static string Ok = nameof(Ok);
-
- ///
- /// 查找类似 开 的本地化字符串。
- ///
- public static string On = nameof(On);
-
- ///
- /// 查找类似 点击打开背景模糊窗口 的本地化字符串。
- ///
- public static string OpenBlurWindow = nameof(OpenBlurWindow);
-
- ///
- /// 查找类似 点击打开常规窗口 的本地化字符串。
- ///
- public static string OpenCommonWindow = nameof(OpenCommonWindow);
-
- ///
- /// 查找类似 点击打开自定义内容窗口 的本地化字符串。
- ///
- public static string OpenCustomContentWindow = nameof(OpenCustomContentWindow);
-
- ///
- /// 查找类似 点击打开自定义消息窗口 的本地化字符串。
- ///
- public static string OpenCustomMessageWindow = nameof(OpenCustomMessageWindow);
-
- ///
- /// 查找类似 点击打开自定义非客户端区域窗口 的本地化字符串。
- ///
- public static string OpenCustomNonClientAreaWindow = nameof(OpenCustomNonClientAreaWindow);
-
- ///
- /// 查找类似 点击打开辉光窗口 的本地化字符串。
- ///
- public static string OpenGlowWindow = nameof(OpenGlowWindow);
-
- ///
- /// 查找类似 点击打开图片浏览器 的本地化字符串。
- ///
- public static string OpenImageBrowser = nameof(OpenImageBrowser);
-
- ///
- /// 查找类似 点击打开消息窗口 的本地化字符串。
- ///
- public static string OpenMessageWindow = nameof(OpenMessageWindow);
-
- ///
- /// 查找类似 点击打开鼠标跟随窗口 的本地化字符串。
- ///
- public static string OpenMouseFollowWindow = nameof(OpenMouseFollowWindow);
-
- ///
- /// 查找类似 点击打开原生常规窗口 的本地化字符串。
- ///
- public static string OpenNativeCommonWindow = nameof(OpenNativeCommonWindow);
-
- ///
- /// 查找类似 点击打开导航窗口 的本地化字符串。
- ///
- public static string OpenNavigationWindow = nameof(OpenNavigationWindow);
-
- ///
- /// 查找类似 打开无非客户端区域可拖拽窗口 的本地化字符串。
- ///
- public static string OpenNoNonClientAreaDragableWindow = nameof(OpenNoNonClientAreaDragableWindow);
-
- ///
- /// 查找类似 打开面板 的本地化字符串。
- ///
- public static string OpenPanel = nameof(OpenPanel);
-
- ///
- /// 查找类似 打开精灵 的本地化字符串。
- ///
- public static string OpenSprite = nameof(OpenSprite);
-
- ///
- /// 查找类似 点击打开触摸拖动窗口 的本地化字符串。
- ///
- public static string OpenTouchDragMoveWindow = nameof(OpenTouchDragMoveWindow);
-
- ///
- /// 查找类似 轮廓文本 的本地化字符串。
- ///
- public static string OutlineText = nameof(OutlineText);
-
- ///
- /// 查找类似 页码条 的本地化字符串。
- ///
- public static string Pagination = nameof(Pagination);
-
- ///
- /// 查找类似 密码框 的本地化字符串。
- ///
- public static string PasswordBox = nameof(PasswordBox);
-
- ///
- /// 查找类似 PIN码框 的本地化字符串。
- ///
- public static string PinBox = nameof(PinBox);
-
- ///
- /// 查找类似 请输入... 的本地化字符串。
- ///
- public static string PleaseInput = nameof(PleaseInput);
-
- ///
- /// 查找类似 请稍后... 的本地化字符串。
- ///
- public static string PleaseWait = nameof(PleaseWait);
-
- ///
- /// 查找类似 请输入内容 的本地化字符串。
- ///
- public static string PlsEnterContent = nameof(PlsEnterContent);
-
- ///
- /// 查找类似 请输入邮箱 的本地化字符串。
- ///
- public static string PlsEnterEmail = nameof(PlsEnterEmail);
-
- ///
- /// 查找类似 请输入关键字 的本地化字符串。
- ///
- public static string PlsEnterKey = nameof(PlsEnterKey);
-
- ///
- /// 查找类似 气泡提示 的本地化字符串。
- ///
- public static string Poptip = nameof(Poptip);
-
- ///
- /// 查找类似 上左;上边;上右;右上;右边;右下;下右;下边;下左;左下;左边;左上 的本地化字符串。
- ///
- public static string PoptipPositionStr = nameof(PoptipPositionStr);
-
- ///
- /// 查找类似 实用例子 的本地化字符串。
- ///
- public static string PracticalDemos = nameof(PracticalDemos);
-
- ///
- /// 查找类似 上一步 的本地化字符串。
- ///
- public static string Prev = nameof(Prev);
-
- ///
- /// 查找类似 预览滑块 的本地化字符串。
- ///
- public static string PreviewSlider = nameof(PreviewSlider);
-
- ///
- /// 查找类似 主要 的本地化字符串。
- ///
- public static string Primary = nameof(Primary);
-
- ///
- /// 查找类似 进度条 的本地化字符串。
- ///
- public static string ProgressBar = nameof(ProgressBar);
-
- ///
- /// 查找类似 进度按钮 的本地化字符串。
- ///
- public static string ProgressButton = nameof(ProgressButton);
-
- ///
- /// 查找类似 项目 的本地化字符串。
- ///
- public static string Project = nameof(Project);
-
- ///
- /// 查找类似 属性编辑器 的本地化字符串。
- ///
- public static string PropertyGrid = nameof(PropertyGrid);
-
- ///
- /// 查找类似 按住说话 的本地化字符串。
- ///
- public static string PushToTalk = nameof(PushToTalk);
-
- ///
- /// 查找类似 QQ群 的本地化字符串。
- ///
- public static string QQGroup = nameof(QQGroup);
-
- ///
- /// 查找类似 单选按钮 的本地化字符串。
- ///
- public static string RadioButton = nameof(RadioButton);
-
- ///
- /// 查找类似 范围滑块 的本地化字符串。
- ///
- public static string RangeSlider = nameof(RangeSlider);
-
- ///
- /// 查找类似 评分 的本地化字符串。
- ///
- public static string Rate = nameof(Rate);
-
- ///
- /// 查找类似 群友推荐 的本地化字符串。
- ///
- public static string Recommendation = nameof(Recommendation);
-
- ///
- /// 查找类似 注册 的本地化字符串。
- ///
- public static string Register = nameof(Register);
-
- ///
- /// 查找类似 相对布局 的本地化字符串。
- ///
- public static string RelativePanel = nameof(RelativePanel);
-
- ///
- /// 查找类似 备注 的本地化字符串。
- ///
- public static string Remark = nameof(Remark);
-
- ///
- /// 查找类似 删除项 的本地化字符串。
- ///
- public static string RemoveItem = nameof(RemoveItem);
-
- ///
- /// 查找类似 重复按钮 的本地化字符串。
- ///
- public static string RepeatButton = nameof(RepeatButton);
-
- ///
- /// 查找类似 回复 的本地化字符串。
- ///
- public static string Reply = nameof(Reply);
-
- ///
- /// 查找类似 代码仓库 的本地化字符串。
- ///
- public static string Repository = nameof(Repository);
-
- ///
- /// 查找类似 响应式布局 的本地化字符串。
- ///
- public static string ResponsiveLayout = nameof(ResponsiveLayout);
-
- ///
- /// 查找类似 富文本框 的本地化字符串。
- ///
- public static string RichTextBox = nameof(RichTextBox);
-
- ///
- /// 查找类似 在这里右击 的本地化字符串。
- ///
- public static string RightClickHere = nameof(RightClickHere);
-
- ///
- /// 查找类似 滚动块 的本地化字符串。
- ///
- public static string RunningBlock = nameof(RunningBlock);
-
- ///
- /// 查找类似 截图 的本地化字符串。
- ///
- public static string Screenshot = nameof(Screenshot);
-
- ///
- /// 查找类似 滚动视图 的本地化字符串。
- ///
- public static string ScrollViewer = nameof(ScrollViewer);
-
- ///
- /// 查找类似 搜索栏 的本地化字符串。
- ///
- public static string SearchBar = nameof(SearchBar);
-
- ///
- /// 查找类似 秒 的本地化字符串。
- ///
- public static string Second = nameof(Second);
-
- ///
- /// 查找类似 选中 的本地化字符串。
- ///
- public static string Selected = nameof(Selected);
-
- ///
- /// 查找类似 发送通知 的本地化字符串。
- ///
- public static string SendNotification = nameof(SendNotification);
-
- ///
- /// 查找类似 徽章 的本地化字符串。
- ///
- public static string Shield = nameof(Shield);
-
- ///
- /// 查找类似 在当前窗口显示 的本地化字符串。
- ///
- public static string ShowInCurrentWindow = nameof(ShowInCurrentWindow);
-
- ///
- /// 查找类似 在主窗口显示 的本地化字符串。
- ///
- public static string ShowInMainWindow = nameof(ShowInMainWindow);
-
- ///
- /// 查找类似 显示行号 的本地化字符串。
- ///
- public static string ShowRowNumber = nameof(ShowRowNumber);
-
- ///
- /// 查找类似 侧边菜单 的本地化字符串。
- ///
- public static string SideMenu = nameof(SideMenu);
-
- ///
- /// 查找类似 滑块 的本地化字符串。
- ///
- public static string Slider = nameof(Slider);
-
- ///
- /// 查找类似 分割按钮 的本地化字符串。
- ///
- public static string SplitButton = nameof(SplitButton);
-
- ///
- /// 查找类似 精灵 的本地化字符串。
- ///
- public static string Sprite = nameof(Sprite);
-
- ///
- /// 查找类似 开始截图 的本地化字符串。
- ///
- public static string StartScreenshot = nameof(StartScreenshot);
-
- ///
- /// 查找类似 保持打开 的本地化字符串。
- ///
- public static string StaysOpen = nameof(StaysOpen);
-
- ///
- /// 查找类似 步骤 的本地化字符串。
- ///
- public static string Step = nameof(Step);
-
- ///
- /// 查找类似 步骤条 的本地化字符串。
- ///
- public static string StepBar = nameof(StepBar);
-
- ///
- /// 查找类似 样式模板 的本地化字符串。
- ///
- public static string Styles = nameof(Styles);
-
- ///
- /// 查找类似 子标题 的本地化字符串。
- ///
- public static string SubTitle = nameof(SubTitle);
-
- ///
- /// 查找类似 成功 的本地化字符串。
- ///
- public static string Success = nameof(Success);
-
- ///
- /// 查找类似 选项卡控件 的本地化字符串。
- ///
- public static string TabControl = nameof(TabControl);
-
- ///
- /// 查找类似 标签 的本地化字符串。
- ///
- public static string Tag = nameof(Tag);
-
- ///
- /// 查找类似 正文 的本地化字符串。
- ///
- public static string Text = nameof(Text);
-
- ///
- /// 查找类似 文本块 的本地化字符串。
- ///
- public static string TextBlock = nameof(TextBlock);
-
- ///
- /// 查找类似 文本框 的本地化字符串。
- ///
- public static string TextBox = nameof(TextBox);
-
- ///
- /// 查找类似 文本对话框 的本地化字符串。
- ///
- public static string TextDialog = nameof(TextDialog);
-
- ///
- /// 查找类似 文本对话框(控件中) 的本地化字符串。
- ///
- public static string TextDialogInControl = nameof(TextDialogInControl);
-
- ///
- /// 查找类似 文本对话框,带计时器 的本地化字符串。
- ///
- public static string TextDialogWithTimer = nameof(TextDialogWithTimer);
-
- ///
- /// 查找类似 时间条 的本地化字符串。
- ///
- public static string TimeBar = nameof(TimeBar);
-
- ///
- /// 查找类似 时间选择器 的本地化字符串。
- ///
- public static string TimePicker = nameof(TimePicker);
-
- ///
- /// 查找类似 提示 的本地化字符串。
- ///
- public static string Tip = nameof(Tip);
-
- ///
- /// 查找类似 标题 的本地化字符串。
- ///
- public static string Title = nameof(Title);
-
- ///
- /// 查找类似 这是标题 的本地化字符串。
- ///
- public static string TitleDemoStr1 = nameof(TitleDemoStr1);
-
- ///
- /// 查找类似 此项必填 的本地化字符串。
- ///
- public static string TitleDemoStr2 = nameof(TitleDemoStr2);
-
- ///
- /// 查找类似 标题在左侧 的本地化字符串。
- ///
- public static string TitleDemoStr3 = nameof(TitleDemoStr3);
-
- ///
- /// 查找类似 切换按钮 的本地化字符串。
- ///
- public static string ToggleButton = nameof(ToggleButton);
-
- ///
- /// 查找类似 工具条 的本地化字符串。
- ///
- public static string ToolBar = nameof(ToolBar);
-
- ///
- /// 查找类似 工具 的本地化字符串。
- ///
- public static string Tools = nameof(Tools);
-
- ///
- /// 查找类似 穿梭框 的本地化字符串。
- ///
- public static string Transfer = nameof(Transfer);
-
- ///
- /// 查找类似 内容过渡控件 的本地化字符串。
- ///
- public static string TransitioningContentControl = nameof(TransitioningContentControl);
-
- ///
- /// 查找类似 树视图 的本地化字符串。
- ///
- public static string TreeView = nameof(TreeView);
-
- ///
- /// 查找类似 试试关闭程序吧? 的本地化字符串。
- ///
- public static string Try2CloseApp = nameof(Try2CloseApp);
-
- ///
- /// 查找类似 类型 的本地化字符串。
- ///
- public static string Type = nameof(Type);
-
- ///
- /// 查找类似 等间距布局 的本地化字符串。
- ///
- public static string UniformSpacingPanel = nameof(UniformSpacingPanel);
-
- ///
- /// 查找类似 上传文件 的本地化字符串。
- ///
- public static string UploadFile = nameof(UploadFile);
-
- ///
- /// 查找类似 上传;上传中 的本地化字符串。
- ///
- public static string UploadStr = nameof(UploadStr);
-
- ///
- /// 查找类似 可见性 的本地化字符串。
- ///
- public static string Visibility = nameof(Visibility);
-
- ///
- /// 查找类似 VS 插件 的本地化字符串。
- ///
- public static string Vsix = nameof(Vsix);
-
- ///
- /// 查找类似 警告 的本地化字符串。
- ///
- public static string Warning = nameof(Warning);
-
- ///
- /// 查找类似 瀑布流 的本地化字符串。
- ///
- public static string WaterfallPanel = nameof(WaterfallPanel);
-
- ///
- /// 查找类似 网站 的本地化字符串。
- ///
- public static string Website = nameof(Website);
-
- ///
- /// 查找类似 窗口 的本地化字符串。
- ///
- public static string Window = nameof(Window);
-
+ return Lang.ResourceManager.GetString(key, Culture);
}
+
+ public static void SetLang(DependencyObject dependencyObject, DependencyProperty dependencyProperty, string key)
+ {
+ BindingOperations.SetBinding(dependencyObject, dependencyProperty, new Binding(key)
+ {
+ Source = Instance,
+ Mode = BindingMode.OneWay
+ });
+ }
+
+ private void UpdateLangs()
+ {
+ OnPropertyChanged(nameof(About));
+ OnPropertyChanged(nameof(AddItem));
+ OnPropertyChanged(nameof(AnimationPath));
+ OnPropertyChanged(nameof(AppClosingTip));
+ OnPropertyChanged(nameof(Ask));
+ OnPropertyChanged(nameof(AutoCompleteTextBox));
+ OnPropertyChanged(nameof(Badge));
+ OnPropertyChanged(nameof(BasicInfo));
+ OnPropertyChanged(nameof(BasicLayout));
+ OnPropertyChanged(nameof(Blink));
+ OnPropertyChanged(nameof(Blog));
+ OnPropertyChanged(nameof(Border));
+ OnPropertyChanged(nameof(Brush));
+ OnPropertyChanged(nameof(Button));
+ OnPropertyChanged(nameof(ButtonCustom));
+ OnPropertyChanged(nameof(ButtonGroup));
+ OnPropertyChanged(nameof(Calendar));
+ OnPropertyChanged(nameof(CalendarWithClock));
+ OnPropertyChanged(nameof(Card));
+ OnPropertyChanged(nameof(Carousel));
+ OnPropertyChanged(nameof(ChangeLangAsk));
+ OnPropertyChanged(nameof(ChatBubble));
+ OnPropertyChanged(nameof(Chatroom));
+ OnPropertyChanged(nameof(CheckBox));
+ OnPropertyChanged(nameof(CheckComboBox));
+ OnPropertyChanged(nameof(CirclePanel));
+ OnPropertyChanged(nameof(Clear));
+ OnPropertyChanged(nameof(Click2Count));
+ OnPropertyChanged(nameof(Clock));
+ OnPropertyChanged(nameof(CloseMainWindowDialog));
+ OnPropertyChanged(nameof(ColorPicker));
+ OnPropertyChanged(nameof(ColumnOffset));
+ OnPropertyChanged(nameof(ColumnSpacing));
+ OnPropertyChanged(nameof(ComboBox));
+ OnPropertyChanged(nameof(ComingSoon));
+ OnPropertyChanged(nameof(Comment));
+ OnPropertyChanged(nameof(Common));
+ OnPropertyChanged(nameof(CompareSlider));
+ OnPropertyChanged(nameof(Complete));
+ OnPropertyChanged(nameof(ContentDemoStr));
+ OnPropertyChanged(nameof(Contributors));
+ OnPropertyChanged(nameof(Controls));
+ OnPropertyChanged(nameof(CoverFlow));
+ OnPropertyChanged(nameof(CoverView));
+ OnPropertyChanged(nameof(Danger));
+ OnPropertyChanged(nameof(DataDisplay));
+ OnPropertyChanged(nameof(DataEntry));
+ OnPropertyChanged(nameof(DataGrid));
+ OnPropertyChanged(nameof(DatePicker));
+ OnPropertyChanged(nameof(DateTimePicker));
+ OnPropertyChanged(nameof(Default));
+ OnPropertyChanged(nameof(Demo));
+ OnPropertyChanged(nameof(Dialog));
+ OnPropertyChanged(nameof(DialogDemo));
+ OnPropertyChanged(nameof(Divider));
+ OnPropertyChanged(nameof(Doc_cn));
+ OnPropertyChanged(nameof(Doc_en));
+ OnPropertyChanged(nameof(Documentation));
+ OnPropertyChanged(nameof(DragHere));
+ OnPropertyChanged(nameof(Drawer));
+ OnPropertyChanged(nameof(Effects));
+ OnPropertyChanged(nameof(ElementGroup));
+ OnPropertyChanged(nameof(Email));
+ OnPropertyChanged(nameof(Empty));
+ OnPropertyChanged(nameof(Error));
+ OnPropertyChanged(nameof(Exit));
+ OnPropertyChanged(nameof(Expander));
+ OnPropertyChanged(nameof(Fatal));
+ OnPropertyChanged(nameof(Feedback));
+ OnPropertyChanged(nameof(FlexPanel));
+ OnPropertyChanged(nameof(FlipClock));
+ OnPropertyChanged(nameof(FloatingBlock));
+ OnPropertyChanged(nameof(FlowDocument));
+ OnPropertyChanged(nameof(FlowDocumentPageViewer));
+ OnPropertyChanged(nameof(FlowDocumentReader));
+ OnPropertyChanged(nameof(FlowDocumentScrollViewer));
+ OnPropertyChanged(nameof(Frame));
+ OnPropertyChanged(nameof(Geometry));
+ OnPropertyChanged(nameof(GifImage));
+ OnPropertyChanged(nameof(GotoTop));
+ OnPropertyChanged(nameof(Gravatar));
+ OnPropertyChanged(nameof(Grid));
+ OnPropertyChanged(nameof(GroupBox));
+ OnPropertyChanged(nameof(Groups));
+ OnPropertyChanged(nameof(Growl));
+ OnPropertyChanged(nameof(GrowlAsk));
+ OnPropertyChanged(nameof(GrowlDemo));
+ OnPropertyChanged(nameof(GrowlError));
+ OnPropertyChanged(nameof(GrowlFatal));
+ OnPropertyChanged(nameof(GrowlInfo));
+ OnPropertyChanged(nameof(GrowlSuccess));
+ OnPropertyChanged(nameof(GrowlWarning));
+ OnPropertyChanged(nameof(HatchBrushGenerator));
+ OnPropertyChanged(nameof(HoneycombPanel));
+ OnPropertyChanged(nameof(HybridLayout));
+ OnPropertyChanged(nameof(Ignore));
+ OnPropertyChanged(nameof(ImageBlock));
+ OnPropertyChanged(nameof(ImageBrowser));
+ OnPropertyChanged(nameof(ImageSelector));
+ OnPropertyChanged(nameof(Index));
+ OnPropertyChanged(nameof(Info));
+ OnPropertyChanged(nameof(Interacting));
+ OnPropertyChanged(nameof(InteractiveDialog));
+ OnPropertyChanged(nameof(IsNotPhone));
+ OnPropertyChanged(nameof(Label));
+ OnPropertyChanged(nameof(LangComment));
+ OnPropertyChanged(nameof(Layout));
+ OnPropertyChanged(nameof(ListBox));
+ OnPropertyChanged(nameof(ListView));
+ OnPropertyChanged(nameof(Loading));
+ OnPropertyChanged(nameof(Magnifier));
+ OnPropertyChanged(nameof(Menu));
+ OnPropertyChanged(nameof(MessageBox));
+ OnPropertyChanged(nameof(Misc));
+ OnPropertyChanged(nameof(Morphing_Animation));
+ OnPropertyChanged(nameof(Name));
+ OnPropertyChanged(nameof(Navigation));
+ OnPropertyChanged(nameof(NewWindow));
+ OnPropertyChanged(nameof(Next));
+ OnPropertyChanged(nameof(Notification));
+ OnPropertyChanged(nameof(NotifyIcon));
+ OnPropertyChanged(nameof(NumericUpDown));
+ OnPropertyChanged(nameof(Off));
+ OnPropertyChanged(nameof(Ok));
+ OnPropertyChanged(nameof(On));
+ OnPropertyChanged(nameof(OpenBlurWindow));
+ OnPropertyChanged(nameof(OpenCommonWindow));
+ OnPropertyChanged(nameof(OpenCustomContentWindow));
+ OnPropertyChanged(nameof(OpenCustomMessageWindow));
+ OnPropertyChanged(nameof(OpenCustomNonClientAreaWindow));
+ OnPropertyChanged(nameof(OpenGlowWindow));
+ OnPropertyChanged(nameof(OpenImageBrowser));
+ OnPropertyChanged(nameof(OpenMessageWindow));
+ OnPropertyChanged(nameof(OpenMouseFollowWindow));
+ OnPropertyChanged(nameof(OpenNativeCommonWindow));
+ OnPropertyChanged(nameof(OpenNavigationWindow));
+ OnPropertyChanged(nameof(OpenNoNonClientAreaDragableWindow));
+ OnPropertyChanged(nameof(OpenPanel));
+ OnPropertyChanged(nameof(OpenSprite));
+ OnPropertyChanged(nameof(OpenTouchDragMoveWindow));
+ OnPropertyChanged(nameof(OutlineText));
+ OnPropertyChanged(nameof(Pagination));
+ OnPropertyChanged(nameof(PasswordBox));
+ OnPropertyChanged(nameof(PinBox));
+ OnPropertyChanged(nameof(PleaseInput));
+ OnPropertyChanged(nameof(PleaseWait));
+ OnPropertyChanged(nameof(PlsEnterContent));
+ OnPropertyChanged(nameof(PlsEnterEmail));
+ OnPropertyChanged(nameof(PlsEnterKey));
+ OnPropertyChanged(nameof(Poptip));
+ OnPropertyChanged(nameof(PoptipPositionStr));
+ OnPropertyChanged(nameof(PracticalDemos));
+ OnPropertyChanged(nameof(Prev));
+ OnPropertyChanged(nameof(PreviewSlider));
+ OnPropertyChanged(nameof(Primary));
+ OnPropertyChanged(nameof(ProgressBar));
+ OnPropertyChanged(nameof(ProgressButton));
+ OnPropertyChanged(nameof(Project));
+ OnPropertyChanged(nameof(PropertyGrid));
+ OnPropertyChanged(nameof(PushToTalk));
+ OnPropertyChanged(nameof(QQGroup));
+ OnPropertyChanged(nameof(RadioButton));
+ OnPropertyChanged(nameof(RangeSlider));
+ OnPropertyChanged(nameof(Rate));
+ OnPropertyChanged(nameof(Recommendation));
+ OnPropertyChanged(nameof(Register));
+ OnPropertyChanged(nameof(RelativePanel));
+ OnPropertyChanged(nameof(Remark));
+ OnPropertyChanged(nameof(RemoveItem));
+ OnPropertyChanged(nameof(RepeatButton));
+ OnPropertyChanged(nameof(Reply));
+ OnPropertyChanged(nameof(Repository));
+ OnPropertyChanged(nameof(ResponsiveLayout));
+ OnPropertyChanged(nameof(RichTextBox));
+ OnPropertyChanged(nameof(RightClickHere));
+ OnPropertyChanged(nameof(RunningBlock));
+ OnPropertyChanged(nameof(Screenshot));
+ OnPropertyChanged(nameof(ScrollViewer));
+ OnPropertyChanged(nameof(SearchBar));
+ OnPropertyChanged(nameof(Second));
+ OnPropertyChanged(nameof(Selected));
+ OnPropertyChanged(nameof(SendNotification));
+ OnPropertyChanged(nameof(Shield));
+ OnPropertyChanged(nameof(ShowInCurrentWindow));
+ OnPropertyChanged(nameof(ShowInMainWindow));
+ OnPropertyChanged(nameof(ShowRowNumber));
+ OnPropertyChanged(nameof(SideMenu));
+ OnPropertyChanged(nameof(Slider));
+ OnPropertyChanged(nameof(SplitButton));
+ OnPropertyChanged(nameof(Sprite));
+ OnPropertyChanged(nameof(StartScreenshot));
+ OnPropertyChanged(nameof(StaysOpen));
+ OnPropertyChanged(nameof(Step));
+ OnPropertyChanged(nameof(StepBar));
+ OnPropertyChanged(nameof(Styles));
+ OnPropertyChanged(nameof(SubTitle));
+ OnPropertyChanged(nameof(Success));
+ OnPropertyChanged(nameof(TabControl));
+ OnPropertyChanged(nameof(Tag));
+ OnPropertyChanged(nameof(Text));
+ OnPropertyChanged(nameof(TextBlock));
+ OnPropertyChanged(nameof(TextBox));
+ OnPropertyChanged(nameof(TextDialog));
+ OnPropertyChanged(nameof(TextDialogInControl));
+ OnPropertyChanged(nameof(TextDialogWithTimer));
+ OnPropertyChanged(nameof(TimeBar));
+ OnPropertyChanged(nameof(TimePicker));
+ OnPropertyChanged(nameof(Tip));
+ OnPropertyChanged(nameof(Title));
+ OnPropertyChanged(nameof(TitleDemoStr1));
+ OnPropertyChanged(nameof(TitleDemoStr2));
+ OnPropertyChanged(nameof(TitleDemoStr3));
+ OnPropertyChanged(nameof(ToggleButton));
+ OnPropertyChanged(nameof(ToolBar));
+ OnPropertyChanged(nameof(Tools));
+ OnPropertyChanged(nameof(Transfer));
+ OnPropertyChanged(nameof(TransitioningContentControl));
+ OnPropertyChanged(nameof(TreeView));
+ OnPropertyChanged(nameof(Try2CloseApp));
+ OnPropertyChanged(nameof(Type));
+ OnPropertyChanged(nameof(UniformSpacingPanel));
+ OnPropertyChanged(nameof(UploadFile));
+ OnPropertyChanged(nameof(UploadStr));
+ OnPropertyChanged(nameof(Visibility));
+ OnPropertyChanged(nameof(Vsix));
+ OnPropertyChanged(nameof(Warning));
+ OnPropertyChanged(nameof(WaterfallPanel));
+ OnPropertyChanged(nameof(Watermark));
+ OnPropertyChanged(nameof(Website));
+ OnPropertyChanged(nameof(Window));
+ }
+
+ ///
+ /// 查找类似 关于 的本地化字符串。
+ ///
+ public string About => Lang.About;
+
+ ///
+ /// 查找类似 添加项 的本地化字符串。
+ ///
+ public string AddItem => Lang.AddItem;
+
+ ///
+ /// 查找类似 动画路径 的本地化字符串。
+ ///
+ public string AnimationPath => Lang.AnimationPath;
+
+ ///
+ /// 查找类似 托盘图标已打开,将隐藏窗口而不是关闭程序 的本地化字符串。
+ ///
+ public string AppClosingTip => Lang.AppClosingTip;
+
+ ///
+ /// 查找类似 询问 的本地化字符串。
+ ///
+ public string Ask => Lang.Ask;
+
+ ///
+ /// 查找类似 自动补全文本框 的本地化字符串。
+ ///
+ public string AutoCompleteTextBox => Lang.AutoCompleteTextBox;
+
+ ///
+ /// 查找类似 标记 的本地化字符串。
+ ///
+ public string Badge => Lang.Badge;
+
+ ///
+ /// 查找类似 填写基本信息 的本地化字符串。
+ ///
+ public string BasicInfo => Lang.BasicInfo;
+
+ ///
+ /// 查找类似 基础布局 的本地化字符串。
+ ///
+ public string BasicLayout => Lang.BasicLayout;
+
+ ///
+ /// 查找类似 闪烁 的本地化字符串。
+ ///
+ public string Blink => Lang.Blink;
+
+ ///
+ /// 查找类似 博客 的本地化字符串。
+ ///
+ public string Blog => Lang.Blog;
+
+ ///
+ /// 查找类似 边框 的本地化字符串。
+ ///
+ public string Border => Lang.Border;
+
+ ///
+ /// 查找类似 画刷 的本地化字符串。
+ ///
+ public string Brush => Lang.Brush;
+
+ ///
+ /// 查找类似 按钮 的本地化字符串。
+ ///
+ public string Button => Lang.Button;
+
+ ///
+ /// 查找类似 自定义按钮 的本地化字符串。
+ ///
+ public string ButtonCustom => Lang.ButtonCustom;
+
+ ///
+ /// 查找类似 按钮组 的本地化字符串。
+ ///
+ public string ButtonGroup => Lang.ButtonGroup;
+
+ ///
+ /// 查找类似 日历 的本地化字符串。
+ ///
+ public string Calendar => Lang.Calendar;
+
+ ///
+ /// 查找类似 带时钟的日历 的本地化字符串。
+ ///
+ public string CalendarWithClock => Lang.CalendarWithClock;
+
+ ///
+ /// 查找类似 卡片 的本地化字符串。
+ ///
+ public string Card => Lang.Card;
+
+ ///
+ /// 查找类似 轮播 的本地化字符串。
+ ///
+ public string Carousel => Lang.Carousel;
+
+ ///
+ /// 查找类似 是否重启以更改语言? 的本地化字符串。
+ ///
+ public string ChangeLangAsk => Lang.ChangeLangAsk;
+
+ ///
+ /// 查找类似 对话气泡 的本地化字符串。
+ ///
+ public string ChatBubble => Lang.ChatBubble;
+
+ ///
+ /// 查找类似 讨论室 的本地化字符串。
+ ///
+ public string Chatroom => Lang.Chatroom;
+
+ ///
+ /// 查找类似 复选框 的本地化字符串。
+ ///
+ public string CheckBox => Lang.CheckBox;
+
+ ///
+ /// 查找类似 多选组合框 的本地化字符串。
+ ///
+ public string CheckComboBox => Lang.CheckComboBox;
+
+ ///
+ /// 查找类似 圆形布局 的本地化字符串。
+ ///
+ public string CirclePanel => Lang.CirclePanel;
+
+ ///
+ /// 查找类似 清空 的本地化字符串。
+ ///
+ public string Clear => Lang.Clear;
+
+ ///
+ /// 查找类似 点击计数 的本地化字符串。
+ ///
+ public string Click2Count => Lang.Click2Count;
+
+ ///
+ /// 查找类似 时钟 的本地化字符串。
+ ///
+ public string Clock => Lang.Clock;
+
+ ///
+ /// 查找类似 关闭主窗口对话框 的本地化字符串。
+ ///
+ public string CloseMainWindowDialog => Lang.CloseMainWindowDialog;
+
+ ///
+ /// 查找类似 颜色拾取器 的本地化字符串。
+ ///
+ public string ColorPicker => Lang.ColorPicker;
+
+ ///
+ /// 查找类似 分栏偏移 的本地化字符串。
+ ///
+ public string ColumnOffset => Lang.ColumnOffset;
+
+ ///
+ /// 查找类似 分栏间隔 的本地化字符串。
+ ///
+ public string ColumnSpacing => Lang.ColumnSpacing;
+
+ ///
+ /// 查找类似 组合框 的本地化字符串。
+ ///
+ public string ComboBox => Lang.ComboBox;
+
+ ///
+ /// 查找类似 敬请期待 的本地化字符串。
+ ///
+ public string ComingSoon => Lang.ComingSoon;
+
+ ///
+ /// 查找类似 评论 的本地化字符串。
+ ///
+ public string Comment => Lang.Comment;
+
+ ///
+ /// 查找类似 一般 的本地化字符串。
+ ///
+ public string Common => Lang.Common;
+
+ ///
+ /// 查找类似 对比滑块 的本地化字符串。
+ ///
+ public string CompareSlider => Lang.CompareSlider;
+
+ ///
+ /// 查找类似 完成 的本地化字符串。
+ ///
+ public string Complete => Lang.Complete;
+
+ ///
+ /// 查找类似 这是内容 的本地化字符串。
+ ///
+ public string ContentDemoStr => Lang.ContentDemoStr;
+
+ ///
+ /// 查找类似 贡献者 的本地化字符串。
+ ///
+ public string Contributors => Lang.Contributors;
+
+ ///
+ /// 查找类似 控件 的本地化字符串。
+ ///
+ public string Controls => Lang.Controls;
+
+ ///
+ /// 查找类似 封面流 的本地化字符串。
+ ///
+ public string CoverFlow => Lang.CoverFlow;
+
+ ///
+ /// 查找类似 封面视图 的本地化字符串。
+ ///
+ public string CoverView => Lang.CoverView;
+
+ ///
+ /// 查找类似 危险 的本地化字符串。
+ ///
+ public string Danger => Lang.Danger;
+
+ ///
+ /// 查找类似 数据展示 的本地化字符串。
+ ///
+ public string DataDisplay => Lang.DataDisplay;
+
+ ///
+ /// 查找类似 数据录入 的本地化字符串。
+ ///
+ public string DataEntry => Lang.DataEntry;
+
+ ///
+ /// 查找类似 数据表格 的本地化字符串。
+ ///
+ public string DataGrid => Lang.DataGrid;
+
+ ///
+ /// 查找类似 日期选择器 的本地化字符串。
+ ///
+ public string DatePicker => Lang.DatePicker;
+
+ ///
+ /// 查找类似 日期时间选择器 的本地化字符串。
+ ///
+ public string DateTimePicker => Lang.DateTimePicker;
+
+ ///
+ /// 查找类似 默认 的本地化字符串。
+ ///
+ public string Default => Lang.Default;
+
+ ///
+ /// 查找类似 示例 的本地化字符串。
+ ///
+ public string Demo => Lang.Demo;
+
+ ///
+ /// 查找类似 对话框 的本地化字符串。
+ ///
+ public string Dialog => Lang.Dialog;
+
+ ///
+ /// 查找类似 对话框示例 的本地化字符串。
+ ///
+ public string DialogDemo => Lang.DialogDemo;
+
+ ///
+ /// 查找类似 分割线 的本地化字符串。
+ ///
+ public string Divider => Lang.Divider;
+
+ ///
+ /// 查找类似 中文文档 的本地化字符串。
+ ///
+ public string Doc_cn => Lang.Doc_cn;
+
+ ///
+ /// 查找类似 英文文档 的本地化字符串。
+ ///
+ public string Doc_en => Lang.Doc_en;
+
+ ///
+ /// 查找类似 文献资料 的本地化字符串。
+ ///
+ public string Documentation => Lang.Documentation;
+
+ ///
+ /// 查找类似 在这里拖拽 的本地化字符串。
+ ///
+ public string DragHere => Lang.DragHere;
+
+ ///
+ /// 查找类似 抽屉 的本地化字符串。
+ ///
+ public string Drawer => Lang.Drawer;
+
+ ///
+ /// 查找类似 效果 的本地化字符串。
+ ///
+ public string Effects => Lang.Effects;
+
+ ///
+ /// 查找类似 元素组 的本地化字符串。
+ ///
+ public string ElementGroup => Lang.ElementGroup;
+
+ ///
+ /// 查找类似 邮箱 的本地化字符串。
+ ///
+ public string Email => Lang.Email;
+
+ ///
+ /// 查找类似 空状态 的本地化字符串。
+ ///
+ public string Empty => Lang.Empty;
+
+ ///
+ /// 查找类似 错误 的本地化字符串。
+ ///
+ public string Error => Lang.Error;
+
+ ///
+ /// 查找类似 退出 的本地化字符串。
+ ///
+ public string Exit => Lang.Exit;
+
+ ///
+ /// 查找类似 展开框 的本地化字符串。
+ ///
+ public string Expander => Lang.Expander;
+
+ ///
+ /// 查找类似 严重 的本地化字符串。
+ ///
+ public string Fatal => Lang.Fatal;
+
+ ///
+ /// 查找类似 反馈 的本地化字符串。
+ ///
+ public string Feedback => Lang.Feedback;
+
+ ///
+ /// 查找类似 弹性盒子 的本地化字符串。
+ ///
+ public string FlexPanel => Lang.FlexPanel;
+
+ ///
+ /// 查找类似 翻页时钟 的本地化字符串。
+ ///
+ public string FlipClock => Lang.FlipClock;
+
+ ///
+ /// 查找类似 漂浮块 的本地化字符串。
+ ///
+ public string FloatingBlock => Lang.FloatingBlock;
+
+ ///
+ /// 查找类似 流文档 的本地化字符串。
+ ///
+ public string FlowDocument => Lang.FlowDocument;
+
+ ///
+ /// 查找类似 流文档单页视图 的本地化字符串。
+ ///
+ public string FlowDocumentPageViewer => Lang.FlowDocumentPageViewer;
+
+ ///
+ /// 查找类似 流文档查看器 的本地化字符串。
+ ///
+ public string FlowDocumentReader => Lang.FlowDocumentReader;
+
+ ///
+ /// 查找类似 流文档滚动视图 的本地化字符串。
+ ///
+ public string FlowDocumentScrollViewer => Lang.FlowDocumentScrollViewer;
+
+ ///
+ /// 查找类似 导航框架 的本地化字符串。
+ ///
+ public string Frame => Lang.Frame;
+
+ ///
+ /// 查找类似 几何形状 的本地化字符串。
+ ///
+ public string Geometry => Lang.Geometry;
+
+ ///
+ /// 查找类似 Gif图片 的本地化字符串。
+ ///
+ public string GifImage => Lang.GifImage;
+
+ ///
+ /// 查找类似 回到顶部 的本地化字符串。
+ ///
+ public string GotoTop => Lang.GotoTop;
+
+ ///
+ /// 查找类似 头像 的本地化字符串。
+ ///
+ public string Gravatar => Lang.Gravatar;
+
+ ///
+ /// 查找类似 栅格 的本地化字符串。
+ ///
+ public string Grid => Lang.Grid;
+
+ ///
+ /// 查找类似 分组框 的本地化字符串。
+ ///
+ public string GroupBox => Lang.GroupBox;
+
+ ///
+ /// 查找类似 组数 的本地化字符串。
+ ///
+ public string Groups => Lang.Groups;
+
+ ///
+ /// 查找类似 信息通知 的本地化字符串。
+ ///
+ public string Growl => Lang.Growl;
+
+ ///
+ /// 查找类似 检测到有新版本!是否更新? 的本地化字符串。
+ ///
+ public string GrowlAsk => Lang.GrowlAsk;
+
+ ///
+ /// 查找类似 消息通知示例 的本地化字符串。
+ ///
+ public string GrowlDemo => Lang.GrowlDemo;
+
+ ///
+ /// 查找类似 连接失败,请检查网络! 的本地化字符串。
+ ///
+ public string GrowlError => Lang.GrowlError;
+
+ ///
+ /// 查找类似 程序已崩溃~~~ 的本地化字符串。
+ ///
+ public string GrowlFatal => Lang.GrowlFatal;
+
+ ///
+ /// 查找类似 今天的天气不错~~~ 的本地化字符串。
+ ///
+ public string GrowlInfo => Lang.GrowlInfo;
+
+ ///
+ /// 查找类似 文件保存成功! 的本地化字符串。
+ ///
+ public string GrowlSuccess => Lang.GrowlSuccess;
+
+ ///
+ /// 查找类似 磁盘空间快要满了! 的本地化字符串。
+ ///
+ public string GrowlWarning => Lang.GrowlWarning;
+
+ ///
+ /// 查找类似 阴影画笔生成器 的本地化字符串。
+ ///
+ public string HatchBrushGenerator => Lang.HatchBrushGenerator;
+
+ ///
+ /// 查找类似 蜂窝布局 的本地化字符串。
+ ///
+ public string HoneycombPanel => Lang.HoneycombPanel;
+
+ ///
+ /// 查找类似 混合布局 的本地化字符串。
+ ///
+ public string HybridLayout => Lang.HybridLayout;
+
+ ///
+ /// 查找类似 忽略 的本地化字符串。
+ ///
+ public string Ignore => Lang.Ignore;
+
+ ///
+ /// 查找类似 图片块 的本地化字符串。
+ ///
+ public string ImageBlock => Lang.ImageBlock;
+
+ ///
+ /// 查找类似 图片浏览器 的本地化字符串。
+ ///
+ public string ImageBrowser => Lang.ImageBrowser;
+
+ ///
+ /// 查找类似 图片选择器 的本地化字符串。
+ ///
+ public string ImageSelector => Lang.ImageSelector;
+
+ ///
+ /// 查找类似 索引 的本地化字符串。
+ ///
+ public string Index => Lang.Index;
+
+ ///
+ /// 查找类似 信息 的本地化字符串。
+ ///
+ public string Info => Lang.Info;
+
+ ///
+ /// 查找类似 交互 的本地化字符串。
+ ///
+ public string Interacting => Lang.Interacting;
+
+ ///
+ /// 查找类似 可交互对话框 的本地化字符串。
+ ///
+ public string InteractiveDialog => Lang.InteractiveDialog;
+
+ ///
+ /// 查找类似 不是手机号码 的本地化字符串。
+ ///
+ public string IsNotPhone => Lang.IsNotPhone;
+
+ ///
+ /// 查找类似 标签 的本地化字符串。
+ ///
+ public string Label => Lang.Label;
+
+ ///
+ /// 查找类似 查找类似 {0} 的本地化字符串。 的本地化字符串。
+ ///
+ public string LangComment => Lang.LangComment;
+
+ ///
+ /// 查找类似 布局 的本地化字符串。
+ ///
+ public string Layout => Lang.Layout;
+
+ ///
+ /// 查找类似 列表框 的本地化字符串。
+ ///
+ public string ListBox => Lang.ListBox;
+
+ ///
+ /// 查找类似 列表视图 的本地化字符串。
+ ///
+ public string ListView => Lang.ListView;
+
+ ///
+ /// 查找类似 加载条 的本地化字符串。
+ ///
+ public string Loading => Lang.Loading;
+
+ ///
+ /// 查找类似 放大镜 的本地化字符串。
+ ///
+ public string Magnifier => Lang.Magnifier;
+
+ ///
+ /// 查找类似 菜单 的本地化字符串。
+ ///
+ public string Menu => Lang.Menu;
+
+ ///
+ /// 查找类似 消息框 的本地化字符串。
+ ///
+ public string MessageBox => Lang.MessageBox;
+
+ ///
+ /// 查找类似 杂项 的本地化字符串。
+ ///
+ public string Misc => Lang.Misc;
+
+ ///
+ /// 查找类似 的本地化字符串。
+ ///
+ public string Morphing_Animation => Lang.Morphing_Animation;
+
+ ///
+ /// 查找类似 名称 的本地化字符串。
+ ///
+ public string Name => Lang.Name;
+
+ ///
+ /// 查找类似 导航 的本地化字符串。
+ ///
+ public string Navigation => Lang.Navigation;
+
+ ///
+ /// 查找类似 新建窗口 的本地化字符串。
+ ///
+ public string NewWindow => Lang.NewWindow;
+
+ ///
+ /// 查找类似 下一步 的本地化字符串。
+ ///
+ public string Next => Lang.Next;
+
+ ///
+ /// 查找类似 桌面通知 的本地化字符串。
+ ///
+ public string Notification => Lang.Notification;
+
+ ///
+ /// 查找类似 托盘图标 的本地化字符串。
+ ///
+ public string NotifyIcon => Lang.NotifyIcon;
+
+ ///
+ /// 查找类似 数值选择控件 的本地化字符串。
+ ///
+ public string NumericUpDown => Lang.NumericUpDown;
+
+ ///
+ /// 查找类似 关 的本地化字符串。
+ ///
+ public string Off => Lang.Off;
+
+ ///
+ /// 查找类似 确定 的本地化字符串。
+ ///
+ public string Ok => Lang.Ok;
+
+ ///
+ /// 查找类似 开 的本地化字符串。
+ ///
+ public string On => Lang.On;
+
+ ///
+ /// 查找类似 点击打开背景模糊窗口 的本地化字符串。
+ ///
+ public string OpenBlurWindow => Lang.OpenBlurWindow;
+
+ ///
+ /// 查找类似 点击打开常规窗口 的本地化字符串。
+ ///
+ public string OpenCommonWindow => Lang.OpenCommonWindow;
+
+ ///
+ /// 查找类似 点击打开自定义内容窗口 的本地化字符串。
+ ///
+ public string OpenCustomContentWindow => Lang.OpenCustomContentWindow;
+
+ ///
+ /// 查找类似 点击打开自定义消息窗口 的本地化字符串。
+ ///
+ public string OpenCustomMessageWindow => Lang.OpenCustomMessageWindow;
+
+ ///
+ /// 查找类似 点击打开自定义非客户端区域窗口 的本地化字符串。
+ ///
+ public string OpenCustomNonClientAreaWindow => Lang.OpenCustomNonClientAreaWindow;
+
+ ///
+ /// 查找类似 点击打开辉光窗口 的本地化字符串。
+ ///
+ public string OpenGlowWindow => Lang.OpenGlowWindow;
+
+ ///
+ /// 查找类似 点击打开图片浏览器 的本地化字符串。
+ ///
+ public string OpenImageBrowser => Lang.OpenImageBrowser;
+
+ ///
+ /// 查找类似 点击打开消息窗口 的本地化字符串。
+ ///
+ public string OpenMessageWindow => Lang.OpenMessageWindow;
+
+ ///
+ /// 查找类似 点击打开鼠标跟随窗口 的本地化字符串。
+ ///
+ public string OpenMouseFollowWindow => Lang.OpenMouseFollowWindow;
+
+ ///
+ /// 查找类似 点击打开原生常规窗口 的本地化字符串。
+ ///
+ public string OpenNativeCommonWindow => Lang.OpenNativeCommonWindow;
+
+ ///
+ /// 查找类似 点击打开导航窗口 的本地化字符串。
+ ///
+ public string OpenNavigationWindow => Lang.OpenNavigationWindow;
+
+ ///
+ /// 查找类似 打开无非客户端区域可拖拽窗口 的本地化字符串。
+ ///
+ public string OpenNoNonClientAreaDragableWindow => Lang.OpenNoNonClientAreaDragableWindow;
+
+ ///
+ /// 查找类似 打开面板 的本地化字符串。
+ ///
+ public string OpenPanel => Lang.OpenPanel;
+
+ ///
+ /// 查找类似 打开精灵 的本地化字符串。
+ ///
+ public string OpenSprite => Lang.OpenSprite;
+
+ ///
+ /// 查找类似 点击打开触摸拖动窗口 的本地化字符串。
+ ///
+ public string OpenTouchDragMoveWindow => Lang.OpenTouchDragMoveWindow;
+
+ ///
+ /// 查找类似 轮廓文本 的本地化字符串。
+ ///
+ public string OutlineText => Lang.OutlineText;
+
+ ///
+ /// 查找类似 页码条 的本地化字符串。
+ ///
+ public string Pagination => Lang.Pagination;
+
+ ///
+ /// 查找类似 密码框 的本地化字符串。
+ ///
+ public string PasswordBox => Lang.PasswordBox;
+
+ ///
+ /// 查找类似 PIN码框 的本地化字符串。
+ ///
+ public string PinBox => Lang.PinBox;
+
+ ///
+ /// 查找类似 请输入... 的本地化字符串。
+ ///
+ public string PleaseInput => Lang.PleaseInput;
+
+ ///
+ /// 查找类似 请稍后... 的本地化字符串。
+ ///
+ public string PleaseWait => Lang.PleaseWait;
+
+ ///
+ /// 查找类似 请输入内容 的本地化字符串。
+ ///
+ public string PlsEnterContent => Lang.PlsEnterContent;
+
+ ///
+ /// 查找类似 请输入邮箱 的本地化字符串。
+ ///
+ public string PlsEnterEmail => Lang.PlsEnterEmail;
+
+ ///
+ /// 查找类似 请输入关键字 的本地化字符串。
+ ///
+ public string PlsEnterKey => Lang.PlsEnterKey;
+
+ ///
+ /// 查找类似 气泡提示 的本地化字符串。
+ ///
+ public string Poptip => Lang.Poptip;
+
+ ///
+ /// 查找类似 上左;上边;上右;右上;右边;右下;下右;下边;下左;左下;左边;左上 的本地化字符串。
+ ///
+ public string PoptipPositionStr => Lang.PoptipPositionStr;
+
+ ///
+ /// 查找类似 实用例子 的本地化字符串。
+ ///
+ public string PracticalDemos => Lang.PracticalDemos;
+
+ ///
+ /// 查找类似 上一步 的本地化字符串。
+ ///
+ public string Prev => Lang.Prev;
+
+ ///
+ /// 查找类似 预览滑块 的本地化字符串。
+ ///
+ public string PreviewSlider => Lang.PreviewSlider;
+
+ ///
+ /// 查找类似 主要 的本地化字符串。
+ ///
+ public string Primary => Lang.Primary;
+
+ ///
+ /// 查找类似 进度条 的本地化字符串。
+ ///
+ public string ProgressBar => Lang.ProgressBar;
+
+ ///
+ /// 查找类似 进度按钮 的本地化字符串。
+ ///
+ public string ProgressButton => Lang.ProgressButton;
+
+ ///
+ /// 查找类似 项目 的本地化字符串。
+ ///
+ public string Project => Lang.Project;
+
+ ///
+ /// 查找类似 属性编辑器 的本地化字符串。
+ ///
+ public string PropertyGrid => Lang.PropertyGrid;
+
+ ///
+ /// 查找类似 按住说话 的本地化字符串。
+ ///
+ public string PushToTalk => Lang.PushToTalk;
+
+ ///
+ /// 查找类似 QQ群 的本地化字符串。
+ ///
+ public string QQGroup => Lang.QQGroup;
+
+ ///
+ /// 查找类似 单选按钮 的本地化字符串。
+ ///
+ public string RadioButton => Lang.RadioButton;
+
+ ///
+ /// 查找类似 范围滑块 的本地化字符串。
+ ///
+ public string RangeSlider => Lang.RangeSlider;
+
+ ///
+ /// 查找类似 评分 的本地化字符串。
+ ///
+ public string Rate => Lang.Rate;
+
+ ///
+ /// 查找类似 群友推荐 的本地化字符串。
+ ///
+ public string Recommendation => Lang.Recommendation;
+
+ ///
+ /// 查找类似 注册 的本地化字符串。
+ ///
+ public string Register => Lang.Register;
+
+ ///
+ /// 查找类似 相对布局 的本地化字符串。
+ ///
+ public string RelativePanel => Lang.RelativePanel;
+
+ ///
+ /// 查找类似 备注 的本地化字符串。
+ ///
+ public string Remark => Lang.Remark;
+
+ ///
+ /// 查找类似 删除项 的本地化字符串。
+ ///
+ public string RemoveItem => Lang.RemoveItem;
+
+ ///
+ /// 查找类似 重复按钮 的本地化字符串。
+ ///
+ public string RepeatButton => Lang.RepeatButton;
+
+ ///
+ /// 查找类似 回复 的本地化字符串。
+ ///
+ public string Reply => Lang.Reply;
+
+ ///
+ /// 查找类似 代码仓库 的本地化字符串。
+ ///
+ public string Repository => Lang.Repository;
+
+ ///
+ /// 查找类似 响应式布局 的本地化字符串。
+ ///
+ public string ResponsiveLayout => Lang.ResponsiveLayout;
+
+ ///
+ /// 查找类似 富文本框 的本地化字符串。
+ ///
+ public string RichTextBox => Lang.RichTextBox;
+
+ ///
+ /// 查找类似 在这里右击 的本地化字符串。
+ ///
+ public string RightClickHere => Lang.RightClickHere;
+
+ ///
+ /// 查找类似 滚动块 的本地化字符串。
+ ///
+ public string RunningBlock => Lang.RunningBlock;
+
+ ///
+ /// 查找类似 截图 的本地化字符串。
+ ///
+ public string Screenshot => Lang.Screenshot;
+
+ ///
+ /// 查找类似 滚动视图 的本地化字符串。
+ ///
+ public string ScrollViewer => Lang.ScrollViewer;
+
+ ///
+ /// 查找类似 搜索栏 的本地化字符串。
+ ///
+ public string SearchBar => Lang.SearchBar;
+
+ ///
+ /// 查找类似 秒 的本地化字符串。
+ ///
+ public string Second => Lang.Second;
+
+ ///
+ /// 查找类似 选中 的本地化字符串。
+ ///
+ public string Selected => Lang.Selected;
+
+ ///
+ /// 查找类似 发送通知 的本地化字符串。
+ ///
+ public string SendNotification => Lang.SendNotification;
+
+ ///
+ /// 查找类似 徽章 的本地化字符串。
+ ///
+ public string Shield => Lang.Shield;
+
+ ///
+ /// 查找类似 在当前窗口显示 的本地化字符串。
+ ///
+ public string ShowInCurrentWindow => Lang.ShowInCurrentWindow;
+
+ ///
+ /// 查找类似 在主窗口显示 的本地化字符串。
+ ///
+ public string ShowInMainWindow => Lang.ShowInMainWindow;
+
+ ///
+ /// 查找类似 显示行号 的本地化字符串。
+ ///
+ public string ShowRowNumber => Lang.ShowRowNumber;
+
+ ///
+ /// 查找类似 侧边菜单 的本地化字符串。
+ ///
+ public string SideMenu => Lang.SideMenu;
+
+ ///
+ /// 查找类似 滑块 的本地化字符串。
+ ///
+ public string Slider => Lang.Slider;
+
+ ///
+ /// 查找类似 分割按钮 的本地化字符串。
+ ///
+ public string SplitButton => Lang.SplitButton;
+
+ ///
+ /// 查找类似 精灵 的本地化字符串。
+ ///
+ public string Sprite => Lang.Sprite;
+
+ ///
+ /// 查找类似 开始截图 的本地化字符串。
+ ///
+ public string StartScreenshot => Lang.StartScreenshot;
+
+ ///
+ /// 查找类似 保持打开 的本地化字符串。
+ ///
+ public string StaysOpen => Lang.StaysOpen;
+
+ ///
+ /// 查找类似 步骤 的本地化字符串。
+ ///
+ public string Step => Lang.Step;
+
+ ///
+ /// 查找类似 步骤条 的本地化字符串。
+ ///
+ public string StepBar => Lang.StepBar;
+
+ ///
+ /// 查找类似 样式模板 的本地化字符串。
+ ///
+ public string Styles => Lang.Styles;
+
+ ///
+ /// 查找类似 子标题 的本地化字符串。
+ ///
+ public string SubTitle => Lang.SubTitle;
+
+ ///
+ /// 查找类似 成功 的本地化字符串。
+ ///
+ public string Success => Lang.Success;
+
+ ///
+ /// 查找类似 选项卡控件 的本地化字符串。
+ ///
+ public string TabControl => Lang.TabControl;
+
+ ///
+ /// 查找类似 标签 的本地化字符串。
+ ///
+ public string Tag => Lang.Tag;
+
+ ///
+ /// 查找类似 正文 的本地化字符串。
+ ///
+ public string Text => Lang.Text;
+
+ ///
+ /// 查找类似 文本块 的本地化字符串。
+ ///
+ public string TextBlock => Lang.TextBlock;
+
+ ///
+ /// 查找类似 文本框 的本地化字符串。
+ ///
+ public string TextBox => Lang.TextBox;
+
+ ///
+ /// 查找类似 文本对话框 的本地化字符串。
+ ///
+ public string TextDialog => Lang.TextDialog;
+
+ ///
+ /// 查找类似 文本对话框(控件中) 的本地化字符串。
+ ///
+ public string TextDialogInControl => Lang.TextDialogInControl;
+
+ ///
+ /// 查找类似 文本对话框,带计时器 的本地化字符串。
+ ///
+ public string TextDialogWithTimer => Lang.TextDialogWithTimer;
+
+ ///
+ /// 查找类似 时间条 的本地化字符串。
+ ///
+ public string TimeBar => Lang.TimeBar;
+
+ ///
+ /// 查找类似 时间选择器 的本地化字符串。
+ ///
+ public string TimePicker => Lang.TimePicker;
+
+ ///
+ /// 查找类似 提示 的本地化字符串。
+ ///
+ public string Tip => Lang.Tip;
+
+ ///
+ /// 查找类似 标题 的本地化字符串。
+ ///
+ public string Title => Lang.Title;
+
+ ///
+ /// 查找类似 这是标题 的本地化字符串。
+ ///
+ public string TitleDemoStr1 => Lang.TitleDemoStr1;
+
+ ///
+ /// 查找类似 此项必填 的本地化字符串。
+ ///
+ public string TitleDemoStr2 => Lang.TitleDemoStr2;
+
+ ///
+ /// 查找类似 标题在左侧 的本地化字符串。
+ ///
+ public string TitleDemoStr3 => Lang.TitleDemoStr3;
+
+ ///
+ /// 查找类似 切换按钮 的本地化字符串。
+ ///
+ public string ToggleButton => Lang.ToggleButton;
+
+ ///
+ /// 查找类似 工具条 的本地化字符串。
+ ///
+ public string ToolBar => Lang.ToolBar;
+
+ ///
+ /// 查找类似 工具 的本地化字符串。
+ ///
+ public string Tools => Lang.Tools;
+
+ ///
+ /// 查找类似 穿梭框 的本地化字符串。
+ ///
+ public string Transfer => Lang.Transfer;
+
+ ///
+ /// 查找类似 内容过渡控件 的本地化字符串。
+ ///
+ public string TransitioningContentControl => Lang.TransitioningContentControl;
+
+ ///
+ /// 查找类似 树视图 的本地化字符串。
+ ///
+ public string TreeView => Lang.TreeView;
+
+ ///
+ /// 查找类似 试试关闭程序吧? 的本地化字符串。
+ ///
+ public string Try2CloseApp => Lang.Try2CloseApp;
+
+ ///
+ /// 查找类似 类型 的本地化字符串。
+ ///
+ public string Type => Lang.Type;
+
+ ///
+ /// 查找类似 等间距布局 的本地化字符串。
+ ///
+ public string UniformSpacingPanel => Lang.UniformSpacingPanel;
+
+ ///
+ /// 查找类似 上传文件 的本地化字符串。
+ ///
+ public string UploadFile => Lang.UploadFile;
+
+ ///
+ /// 查找类似 上传;上传中 的本地化字符串。
+ ///
+ public string UploadStr => Lang.UploadStr;
+
+ ///
+ /// 查找类似 可见性 的本地化字符串。
+ ///
+ public string Visibility => Lang.Visibility;
+
+ ///
+ /// 查找类似 VS 插件 的本地化字符串。
+ ///
+ public string Vsix => Lang.Vsix;
+
+ ///
+ /// 查找类似 警告 的本地化字符串。
+ ///
+ public string Warning => Lang.Warning;
+
+ ///
+ /// 查找类似 瀑布流 的本地化字符串。
+ ///
+ public string WaterfallPanel => Lang.WaterfallPanel;
+
+ ///
+ /// 查找类似 水印 的本地化字符串。
+ ///
+ public string Watermark => Lang.Watermark;
+
+ ///
+ /// 查找类似 网站 的本地化字符串。
+ ///
+ public string Website => Lang.Website;
+
+ ///
+ /// 查找类似 窗口 的本地化字符串。
+ ///
+ public string Window => Lang.Window;
+
+
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ protected virtual void OnPropertyChanged(string propertyName) =>
+ PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+}
+
+public class LangKeys
+{
+ ///
+ /// 查找类似 关于 的本地化字符串。
+ ///
+ public static string About = nameof(About);
+
+ ///
+ /// 查找类似 添加项 的本地化字符串。
+ ///
+ public static string AddItem = nameof(AddItem);
+
+ ///
+ /// 查找类似 动画路径 的本地化字符串。
+ ///
+ public static string AnimationPath = nameof(AnimationPath);
+
+ ///
+ /// 查找类似 托盘图标已打开,将隐藏窗口而不是关闭程序 的本地化字符串。
+ ///
+ public static string AppClosingTip = nameof(AppClosingTip);
+
+ ///
+ /// 查找类似 询问 的本地化字符串。
+ ///
+ public static string Ask = nameof(Ask);
+
+ ///
+ /// 查找类似 自动补全文本框 的本地化字符串。
+ ///
+ public static string AutoCompleteTextBox = nameof(AutoCompleteTextBox);
+
+ ///
+ /// 查找类似 标记 的本地化字符串。
+ ///
+ public static string Badge = nameof(Badge);
+
+ ///
+ /// 查找类似 填写基本信息 的本地化字符串。
+ ///
+ public static string BasicInfo = nameof(BasicInfo);
+
+ ///
+ /// 查找类似 基础布局 的本地化字符串。
+ ///
+ public static string BasicLayout = nameof(BasicLayout);
+
+ ///
+ /// 查找类似 闪烁 的本地化字符串。
+ ///
+ public static string Blink = nameof(Blink);
+
+ ///
+ /// 查找类似 博客 的本地化字符串。
+ ///
+ public static string Blog = nameof(Blog);
+
+ ///
+ /// 查找类似 边框 的本地化字符串。
+ ///
+ public static string Border = nameof(Border);
+
+ ///
+ /// 查找类似 画刷 的本地化字符串。
+ ///
+ public static string Brush = nameof(Brush);
+
+ ///
+ /// 查找类似 按钮 的本地化字符串。
+ ///
+ public static string Button = nameof(Button);
+
+ ///
+ /// 查找类似 自定义按钮 的本地化字符串。
+ ///
+ public static string ButtonCustom = nameof(ButtonCustom);
+
+ ///
+ /// 查找类似 按钮组 的本地化字符串。
+ ///
+ public static string ButtonGroup = nameof(ButtonGroup);
+
+ ///
+ /// 查找类似 日历 的本地化字符串。
+ ///
+ public static string Calendar = nameof(Calendar);
+
+ ///
+ /// 查找类似 带时钟的日历 的本地化字符串。
+ ///
+ public static string CalendarWithClock = nameof(CalendarWithClock);
+
+ ///
+ /// 查找类似 卡片 的本地化字符串。
+ ///
+ public static string Card = nameof(Card);
+
+ ///
+ /// 查找类似 轮播 的本地化字符串。
+ ///
+ public static string Carousel = nameof(Carousel);
+
+ ///
+ /// 查找类似 是否重启以更改语言? 的本地化字符串。
+ ///
+ public static string ChangeLangAsk = nameof(ChangeLangAsk);
+
+ ///
+ /// 查找类似 对话气泡 的本地化字符串。
+ ///
+ public static string ChatBubble = nameof(ChatBubble);
+
+ ///
+ /// 查找类似 讨论室 的本地化字符串。
+ ///
+ public static string Chatroom = nameof(Chatroom);
+
+ ///
+ /// 查找类似 复选框 的本地化字符串。
+ ///
+ public static string CheckBox = nameof(CheckBox);
+
+ ///
+ /// 查找类似 多选组合框 的本地化字符串。
+ ///
+ public static string CheckComboBox = nameof(CheckComboBox);
+
+ ///
+ /// 查找类似 圆形布局 的本地化字符串。
+ ///
+ public static string CirclePanel = nameof(CirclePanel);
+
+ ///
+ /// 查找类似 清空 的本地化字符串。
+ ///
+ public static string Clear = nameof(Clear);
+
+ ///
+ /// 查找类似 点击计数 的本地化字符串。
+ ///
+ public static string Click2Count = nameof(Click2Count);
+
+ ///
+ /// 查找类似 时钟 的本地化字符串。
+ ///
+ public static string Clock = nameof(Clock);
+
+ ///
+ /// 查找类似 关闭主窗口对话框 的本地化字符串。
+ ///
+ public static string CloseMainWindowDialog = nameof(CloseMainWindowDialog);
+
+ ///
+ /// 查找类似 颜色拾取器 的本地化字符串。
+ ///
+ public static string ColorPicker = nameof(ColorPicker);
+
+ ///
+ /// 查找类似 分栏偏移 的本地化字符串。
+ ///
+ public static string ColumnOffset = nameof(ColumnOffset);
+
+ ///
+ /// 查找类似 分栏间隔 的本地化字符串。
+ ///
+ public static string ColumnSpacing = nameof(ColumnSpacing);
+
+ ///
+ /// 查找类似 组合框 的本地化字符串。
+ ///
+ public static string ComboBox = nameof(ComboBox);
+
+ ///
+ /// 查找类似 敬请期待 的本地化字符串。
+ ///
+ public static string ComingSoon = nameof(ComingSoon);
+
+ ///
+ /// 查找类似 评论 的本地化字符串。
+ ///
+ public static string Comment = nameof(Comment);
+
+ ///
+ /// 查找类似 一般 的本地化字符串。
+ ///
+ public static string Common = nameof(Common);
+
+ ///
+ /// 查找类似 对比滑块 的本地化字符串。
+ ///
+ public static string CompareSlider = nameof(CompareSlider);
+
+ ///
+ /// 查找类似 完成 的本地化字符串。
+ ///
+ public static string Complete = nameof(Complete);
+
+ ///
+ /// 查找类似 这是内容 的本地化字符串。
+ ///
+ public static string ContentDemoStr = nameof(ContentDemoStr);
+
+ ///
+ /// 查找类似 贡献者 的本地化字符串。
+ ///
+ public static string Contributors = nameof(Contributors);
+
+ ///
+ /// 查找类似 控件 的本地化字符串。
+ ///
+ public static string Controls = nameof(Controls);
+
+ ///
+ /// 查找类似 封面流 的本地化字符串。
+ ///
+ public static string CoverFlow = nameof(CoverFlow);
+
+ ///
+ /// 查找类似 封面视图 的本地化字符串。
+ ///
+ public static string CoverView = nameof(CoverView);
+
+ ///
+ /// 查找类似 危险 的本地化字符串。
+ ///
+ public static string Danger = nameof(Danger);
+
+ ///
+ /// 查找类似 数据展示 的本地化字符串。
+ ///
+ public static string DataDisplay = nameof(DataDisplay);
+
+ ///
+ /// 查找类似 数据录入 的本地化字符串。
+ ///
+ public static string DataEntry = nameof(DataEntry);
+
+ ///
+ /// 查找类似 数据表格 的本地化字符串。
+ ///
+ public static string DataGrid = nameof(DataGrid);
+
+ ///
+ /// 查找类似 日期选择器 的本地化字符串。
+ ///
+ public static string DatePicker = nameof(DatePicker);
+
+ ///
+ /// 查找类似 日期时间选择器 的本地化字符串。
+ ///
+ public static string DateTimePicker = nameof(DateTimePicker);
+
+ ///
+ /// 查找类似 默认 的本地化字符串。
+ ///
+ public static string Default = nameof(Default);
+
+ ///
+ /// 查找类似 示例 的本地化字符串。
+ ///
+ public static string Demo = nameof(Demo);
+
+ ///
+ /// 查找类似 对话框 的本地化字符串。
+ ///
+ public static string Dialog = nameof(Dialog);
+
+ ///
+ /// 查找类似 对话框示例 的本地化字符串。
+ ///
+ public static string DialogDemo = nameof(DialogDemo);
+
+ ///
+ /// 查找类似 分割线 的本地化字符串。
+ ///
+ public static string Divider = nameof(Divider);
+
+ ///
+ /// 查找类似 中文文档 的本地化字符串。
+ ///
+ public static string Doc_cn = nameof(Doc_cn);
+
+ ///
+ /// 查找类似 英文文档 的本地化字符串。
+ ///
+ public static string Doc_en = nameof(Doc_en);
+
+ ///
+ /// 查找类似 文献资料 的本地化字符串。
+ ///
+ public static string Documentation = nameof(Documentation);
+
+ ///
+ /// 查找类似 在这里拖拽 的本地化字符串。
+ ///
+ public static string DragHere = nameof(DragHere);
+
+ ///
+ /// 查找类似 抽屉 的本地化字符串。
+ ///
+ public static string Drawer = nameof(Drawer);
+
+ ///
+ /// 查找类似 效果 的本地化字符串。
+ ///
+ public static string Effects = nameof(Effects);
+
+ ///
+ /// 查找类似 元素组 的本地化字符串。
+ ///
+ public static string ElementGroup = nameof(ElementGroup);
+
+ ///
+ /// 查找类似 邮箱 的本地化字符串。
+ ///
+ public static string Email = nameof(Email);
+
+ ///
+ /// 查找类似 空状态 的本地化字符串。
+ ///
+ public static string Empty = nameof(Empty);
+
+ ///
+ /// 查找类似 错误 的本地化字符串。
+ ///
+ public static string Error = nameof(Error);
+
+ ///
+ /// 查找类似 退出 的本地化字符串。
+ ///
+ public static string Exit = nameof(Exit);
+
+ ///
+ /// 查找类似 展开框 的本地化字符串。
+ ///
+ public static string Expander = nameof(Expander);
+
+ ///
+ /// 查找类似 严重 的本地化字符串。
+ ///
+ public static string Fatal = nameof(Fatal);
+
+ ///
+ /// 查找类似 反馈 的本地化字符串。
+ ///
+ public static string Feedback = nameof(Feedback);
+
+ ///
+ /// 查找类似 弹性盒子 的本地化字符串。
+ ///
+ public static string FlexPanel = nameof(FlexPanel);
+
+ ///
+ /// 查找类似 翻页时钟 的本地化字符串。
+ ///
+ public static string FlipClock = nameof(FlipClock);
+
+ ///
+ /// 查找类似 漂浮块 的本地化字符串。
+ ///
+ public static string FloatingBlock = nameof(FloatingBlock);
+
+ ///
+ /// 查找类似 流文档 的本地化字符串。
+ ///
+ public static string FlowDocument = nameof(FlowDocument);
+
+ ///
+ /// 查找类似 流文档单页视图 的本地化字符串。
+ ///
+ public static string FlowDocumentPageViewer = nameof(FlowDocumentPageViewer);
+
+ ///
+ /// 查找类似 流文档查看器 的本地化字符串。
+ ///
+ public static string FlowDocumentReader = nameof(FlowDocumentReader);
+
+ ///
+ /// 查找类似 流文档滚动视图 的本地化字符串。
+ ///
+ public static string FlowDocumentScrollViewer = nameof(FlowDocumentScrollViewer);
+
+ ///
+ /// 查找类似 导航框架 的本地化字符串。
+ ///
+ public static string Frame = nameof(Frame);
+
+ ///
+ /// 查找类似 几何形状 的本地化字符串。
+ ///
+ public static string Geometry = nameof(Geometry);
+
+ ///
+ /// 查找类似 Gif图片 的本地化字符串。
+ ///
+ public static string GifImage = nameof(GifImage);
+
+ ///
+ /// 查找类似 回到顶部 的本地化字符串。
+ ///
+ public static string GotoTop = nameof(GotoTop);
+
+ ///
+ /// 查找类似 头像 的本地化字符串。
+ ///
+ public static string Gravatar = nameof(Gravatar);
+
+ ///
+ /// 查找类似 栅格 的本地化字符串。
+ ///
+ public static string Grid = nameof(Grid);
+
+ ///
+ /// 查找类似 分组框 的本地化字符串。
+ ///
+ public static string GroupBox = nameof(GroupBox);
+
+ ///
+ /// 查找类似 组数 的本地化字符串。
+ ///
+ public static string Groups = nameof(Groups);
+
+ ///
+ /// 查找类似 信息通知 的本地化字符串。
+ ///
+ public static string Growl = nameof(Growl);
+
+ ///
+ /// 查找类似 检测到有新版本!是否更新? 的本地化字符串。
+ ///
+ public static string GrowlAsk = nameof(GrowlAsk);
+
+ ///
+ /// 查找类似 消息通知示例 的本地化字符串。
+ ///
+ public static string GrowlDemo = nameof(GrowlDemo);
+
+ ///
+ /// 查找类似 连接失败,请检查网络! 的本地化字符串。
+ ///
+ public static string GrowlError = nameof(GrowlError);
+
+ ///
+ /// 查找类似 程序已崩溃~~~ 的本地化字符串。
+ ///
+ public static string GrowlFatal = nameof(GrowlFatal);
+
+ ///
+ /// 查找类似 今天的天气不错~~~ 的本地化字符串。
+ ///
+ public static string GrowlInfo = nameof(GrowlInfo);
+
+ ///
+ /// 查找类似 文件保存成功! 的本地化字符串。
+ ///
+ public static string GrowlSuccess = nameof(GrowlSuccess);
+
+ ///
+ /// 查找类似 磁盘空间快要满了! 的本地化字符串。
+ ///
+ public static string GrowlWarning = nameof(GrowlWarning);
+
+ ///
+ /// 查找类似 阴影画笔生成器 的本地化字符串。
+ ///
+ public static string HatchBrushGenerator = nameof(HatchBrushGenerator);
+
+ ///
+ /// 查找类似 蜂窝布局 的本地化字符串。
+ ///
+ public static string HoneycombPanel = nameof(HoneycombPanel);
+
+ ///
+ /// 查找类似 混合布局 的本地化字符串。
+ ///
+ public static string HybridLayout = nameof(HybridLayout);
+
+ ///
+ /// 查找类似 忽略 的本地化字符串。
+ ///
+ public static string Ignore = nameof(Ignore);
+
+ ///
+ /// 查找类似 图片块 的本地化字符串。
+ ///
+ public static string ImageBlock = nameof(ImageBlock);
+
+ ///
+ /// 查找类似 图片浏览器 的本地化字符串。
+ ///
+ public static string ImageBrowser = nameof(ImageBrowser);
+
+ ///
+ /// 查找类似 图片选择器 的本地化字符串。
+ ///
+ public static string ImageSelector = nameof(ImageSelector);
+
+ ///
+ /// 查找类似 索引 的本地化字符串。
+ ///
+ public static string Index = nameof(Index);
+
+ ///
+ /// 查找类似 信息 的本地化字符串。
+ ///
+ public static string Info = nameof(Info);
+
+ ///
+ /// 查找类似 交互 的本地化字符串。
+ ///
+ public static string Interacting = nameof(Interacting);
+
+ ///
+ /// 查找类似 可交互对话框 的本地化字符串。
+ ///
+ public static string InteractiveDialog = nameof(InteractiveDialog);
+
+ ///
+ /// 查找类似 不是手机号码 的本地化字符串。
+ ///
+ public static string IsNotPhone = nameof(IsNotPhone);
+
+ ///
+ /// 查找类似 标签 的本地化字符串。
+ ///
+ public static string Label = nameof(Label);
+
+ ///
+ /// 查找类似 查找类似 {0} 的本地化字符串。 的本地化字符串。
+ ///
+ public static string LangComment = nameof(LangComment);
+
+ ///
+ /// 查找类似 布局 的本地化字符串。
+ ///
+ public static string Layout = nameof(Layout);
+
+ ///
+ /// 查找类似 列表框 的本地化字符串。
+ ///
+ public static string ListBox = nameof(ListBox);
+
+ ///
+ /// 查找类似 列表视图 的本地化字符串。
+ ///
+ public static string ListView = nameof(ListView);
+
+ ///
+ /// 查找类似 加载条 的本地化字符串。
+ ///
+ public static string Loading = nameof(Loading);
+
+ ///
+ /// 查找类似 放大镜 的本地化字符串。
+ ///
+ public static string Magnifier = nameof(Magnifier);
+
+ ///
+ /// 查找类似 菜单 的本地化字符串。
+ ///
+ public static string Menu = nameof(Menu);
+
+ ///
+ /// 查找类似 消息框 的本地化字符串。
+ ///
+ public static string MessageBox = nameof(MessageBox);
+
+ ///
+ /// 查找类似 杂项 的本地化字符串。
+ ///
+ public static string Misc = nameof(Misc);
+
+ ///
+ /// 查找类似 的本地化字符串。
+ ///
+ public static string Morphing_Animation = nameof(Morphing_Animation);
+
+ ///
+ /// 查找类似 名称 的本地化字符串。
+ ///
+ public static string Name = nameof(Name);
+
+ ///
+ /// 查找类似 导航 的本地化字符串。
+ ///
+ public static string Navigation = nameof(Navigation);
+
+ ///
+ /// 查找类似 新建窗口 的本地化字符串。
+ ///
+ public static string NewWindow = nameof(NewWindow);
+
+ ///
+ /// 查找类似 下一步 的本地化字符串。
+ ///
+ public static string Next = nameof(Next);
+
+ ///
+ /// 查找类似 桌面通知 的本地化字符串。
+ ///
+ public static string Notification = nameof(Notification);
+
+ ///
+ /// 查找类似 托盘图标 的本地化字符串。
+ ///
+ public static string NotifyIcon = nameof(NotifyIcon);
+
+ ///
+ /// 查找类似 数值选择控件 的本地化字符串。
+ ///
+ public static string NumericUpDown = nameof(NumericUpDown);
+
+ ///
+ /// 查找类似 关 的本地化字符串。
+ ///
+ public static string Off = nameof(Off);
+
+ ///
+ /// 查找类似 确定 的本地化字符串。
+ ///
+ public static string Ok = nameof(Ok);
+
+ ///
+ /// 查找类似 开 的本地化字符串。
+ ///
+ public static string On = nameof(On);
+
+ ///
+ /// 查找类似 点击打开背景模糊窗口 的本地化字符串。
+ ///
+ public static string OpenBlurWindow = nameof(OpenBlurWindow);
+
+ ///
+ /// 查找类似 点击打开常规窗口 的本地化字符串。
+ ///
+ public static string OpenCommonWindow = nameof(OpenCommonWindow);
+
+ ///
+ /// 查找类似 点击打开自定义内容窗口 的本地化字符串。
+ ///
+ public static string OpenCustomContentWindow = nameof(OpenCustomContentWindow);
+
+ ///
+ /// 查找类似 点击打开自定义消息窗口 的本地化字符串。
+ ///
+ public static string OpenCustomMessageWindow = nameof(OpenCustomMessageWindow);
+
+ ///
+ /// 查找类似 点击打开自定义非客户端区域窗口 的本地化字符串。
+ ///
+ public static string OpenCustomNonClientAreaWindow = nameof(OpenCustomNonClientAreaWindow);
+
+ ///
+ /// 查找类似 点击打开辉光窗口 的本地化字符串。
+ ///
+ public static string OpenGlowWindow = nameof(OpenGlowWindow);
+
+ ///
+ /// 查找类似 点击打开图片浏览器 的本地化字符串。
+ ///
+ public static string OpenImageBrowser = nameof(OpenImageBrowser);
+
+ ///
+ /// 查找类似 点击打开消息窗口 的本地化字符串。
+ ///
+ public static string OpenMessageWindow = nameof(OpenMessageWindow);
+
+ ///
+ /// 查找类似 点击打开鼠标跟随窗口 的本地化字符串。
+ ///
+ public static string OpenMouseFollowWindow = nameof(OpenMouseFollowWindow);
+
+ ///
+ /// 查找类似 点击打开原生常规窗口 的本地化字符串。
+ ///
+ public static string OpenNativeCommonWindow = nameof(OpenNativeCommonWindow);
+
+ ///
+ /// 查找类似 点击打开导航窗口 的本地化字符串。
+ ///
+ public static string OpenNavigationWindow = nameof(OpenNavigationWindow);
+
+ ///
+ /// 查找类似 打开无非客户端区域可拖拽窗口 的本地化字符串。
+ ///
+ public static string OpenNoNonClientAreaDragableWindow = nameof(OpenNoNonClientAreaDragableWindow);
+
+ ///
+ /// 查找类似 打开面板 的本地化字符串。
+ ///
+ public static string OpenPanel = nameof(OpenPanel);
+
+ ///
+ /// 查找类似 打开精灵 的本地化字符串。
+ ///
+ public static string OpenSprite = nameof(OpenSprite);
+
+ ///
+ /// 查找类似 点击打开触摸拖动窗口 的本地化字符串。
+ ///
+ public static string OpenTouchDragMoveWindow = nameof(OpenTouchDragMoveWindow);
+
+ ///
+ /// 查找类似 轮廓文本 的本地化字符串。
+ ///
+ public static string OutlineText = nameof(OutlineText);
+
+ ///
+ /// 查找类似 页码条 的本地化字符串。
+ ///
+ public static string Pagination = nameof(Pagination);
+
+ ///
+ /// 查找类似 密码框 的本地化字符串。
+ ///
+ public static string PasswordBox = nameof(PasswordBox);
+
+ ///
+ /// 查找类似 PIN码框 的本地化字符串。
+ ///
+ public static string PinBox = nameof(PinBox);
+
+ ///
+ /// 查找类似 请输入... 的本地化字符串。
+ ///
+ public static string PleaseInput = nameof(PleaseInput);
+
+ ///
+ /// 查找类似 请稍后... 的本地化字符串。
+ ///
+ public static string PleaseWait = nameof(PleaseWait);
+
+ ///
+ /// 查找类似 请输入内容 的本地化字符串。
+ ///
+ public static string PlsEnterContent = nameof(PlsEnterContent);
+
+ ///
+ /// 查找类似 请输入邮箱 的本地化字符串。
+ ///
+ public static string PlsEnterEmail = nameof(PlsEnterEmail);
+
+ ///
+ /// 查找类似 请输入关键字 的本地化字符串。
+ ///
+ public static string PlsEnterKey = nameof(PlsEnterKey);
+
+ ///
+ /// 查找类似 气泡提示 的本地化字符串。
+ ///
+ public static string Poptip = nameof(Poptip);
+
+ ///
+ /// 查找类似 上左;上边;上右;右上;右边;右下;下右;下边;下左;左下;左边;左上 的本地化字符串。
+ ///
+ public static string PoptipPositionStr = nameof(PoptipPositionStr);
+
+ ///
+ /// 查找类似 实用例子 的本地化字符串。
+ ///
+ public static string PracticalDemos = nameof(PracticalDemos);
+
+ ///
+ /// 查找类似 上一步 的本地化字符串。
+ ///
+ public static string Prev = nameof(Prev);
+
+ ///
+ /// 查找类似 预览滑块 的本地化字符串。
+ ///
+ public static string PreviewSlider = nameof(PreviewSlider);
+
+ ///
+ /// 查找类似 主要 的本地化字符串。
+ ///
+ public static string Primary = nameof(Primary);
+
+ ///
+ /// 查找类似 进度条 的本地化字符串。
+ ///
+ public static string ProgressBar = nameof(ProgressBar);
+
+ ///
+ /// 查找类似 进度按钮 的本地化字符串。
+ ///
+ public static string ProgressButton = nameof(ProgressButton);
+
+ ///
+ /// 查找类似 项目 的本地化字符串。
+ ///
+ public static string Project = nameof(Project);
+
+ ///
+ /// 查找类似 属性编辑器 的本地化字符串。
+ ///
+ public static string PropertyGrid = nameof(PropertyGrid);
+
+ ///
+ /// 查找类似 按住说话 的本地化字符串。
+ ///
+ public static string PushToTalk = nameof(PushToTalk);
+
+ ///
+ /// 查找类似 QQ群 的本地化字符串。
+ ///
+ public static string QQGroup = nameof(QQGroup);
+
+ ///
+ /// 查找类似 单选按钮 的本地化字符串。
+ ///
+ public static string RadioButton = nameof(RadioButton);
+
+ ///
+ /// 查找类似 范围滑块 的本地化字符串。
+ ///
+ public static string RangeSlider = nameof(RangeSlider);
+
+ ///
+ /// 查找类似 评分 的本地化字符串。
+ ///
+ public static string Rate = nameof(Rate);
+
+ ///
+ /// 查找类似 群友推荐 的本地化字符串。
+ ///
+ public static string Recommendation = nameof(Recommendation);
+
+ ///
+ /// 查找类似 注册 的本地化字符串。
+ ///
+ public static string Register = nameof(Register);
+
+ ///
+ /// 查找类似 相对布局 的本地化字符串。
+ ///
+ public static string RelativePanel = nameof(RelativePanel);
+
+ ///
+ /// 查找类似 备注 的本地化字符串。
+ ///
+ public static string Remark = nameof(Remark);
+
+ ///
+ /// 查找类似 删除项 的本地化字符串。
+ ///
+ public static string RemoveItem = nameof(RemoveItem);
+
+ ///
+ /// 查找类似 重复按钮 的本地化字符串。
+ ///
+ public static string RepeatButton = nameof(RepeatButton);
+
+ ///
+ /// 查找类似 回复 的本地化字符串。
+ ///
+ public static string Reply = nameof(Reply);
+
+ ///
+ /// 查找类似 代码仓库 的本地化字符串。
+ ///
+ public static string Repository = nameof(Repository);
+
+ ///
+ /// 查找类似 响应式布局 的本地化字符串。
+ ///
+ public static string ResponsiveLayout = nameof(ResponsiveLayout);
+
+ ///
+ /// 查找类似 富文本框 的本地化字符串。
+ ///
+ public static string RichTextBox = nameof(RichTextBox);
+
+ ///
+ /// 查找类似 在这里右击 的本地化字符串。
+ ///
+ public static string RightClickHere = nameof(RightClickHere);
+
+ ///
+ /// 查找类似 滚动块 的本地化字符串。
+ ///
+ public static string RunningBlock = nameof(RunningBlock);
+
+ ///
+ /// 查找类似 截图 的本地化字符串。
+ ///
+ public static string Screenshot = nameof(Screenshot);
+
+ ///
+ /// 查找类似 滚动视图 的本地化字符串。
+ ///
+ public static string ScrollViewer = nameof(ScrollViewer);
+
+ ///
+ /// 查找类似 搜索栏 的本地化字符串。
+ ///
+ public static string SearchBar = nameof(SearchBar);
+
+ ///
+ /// 查找类似 秒 的本地化字符串。
+ ///
+ public static string Second = nameof(Second);
+
+ ///
+ /// 查找类似 选中 的本地化字符串。
+ ///
+ public static string Selected = nameof(Selected);
+
+ ///
+ /// 查找类似 发送通知 的本地化字符串。
+ ///
+ public static string SendNotification = nameof(SendNotification);
+
+ ///
+ /// 查找类似 徽章 的本地化字符串。
+ ///
+ public static string Shield = nameof(Shield);
+
+ ///
+ /// 查找类似 在当前窗口显示 的本地化字符串。
+ ///
+ public static string ShowInCurrentWindow = nameof(ShowInCurrentWindow);
+
+ ///
+ /// 查找类似 在主窗口显示 的本地化字符串。
+ ///
+ public static string ShowInMainWindow = nameof(ShowInMainWindow);
+
+ ///
+ /// 查找类似 显示行号 的本地化字符串。
+ ///
+ public static string ShowRowNumber = nameof(ShowRowNumber);
+
+ ///
+ /// 查找类似 侧边菜单 的本地化字符串。
+ ///
+ public static string SideMenu = nameof(SideMenu);
+
+ ///
+ /// 查找类似 滑块 的本地化字符串。
+ ///
+ public static string Slider = nameof(Slider);
+
+ ///
+ /// 查找类似 分割按钮 的本地化字符串。
+ ///
+ public static string SplitButton = nameof(SplitButton);
+
+ ///
+ /// 查找类似 精灵 的本地化字符串。
+ ///
+ public static string Sprite = nameof(Sprite);
+
+ ///
+ /// 查找类似 开始截图 的本地化字符串。
+ ///
+ public static string StartScreenshot = nameof(StartScreenshot);
+
+ ///
+ /// 查找类似 保持打开 的本地化字符串。
+ ///
+ public static string StaysOpen = nameof(StaysOpen);
+
+ ///
+ /// 查找类似 步骤 的本地化字符串。
+ ///
+ public static string Step = nameof(Step);
+
+ ///
+ /// 查找类似 步骤条 的本地化字符串。
+ ///
+ public static string StepBar = nameof(StepBar);
+
+ ///
+ /// 查找类似 样式模板 的本地化字符串。
+ ///
+ public static string Styles = nameof(Styles);
+
+ ///
+ /// 查找类似 子标题 的本地化字符串。
+ ///
+ public static string SubTitle = nameof(SubTitle);
+
+ ///
+ /// 查找类似 成功 的本地化字符串。
+ ///
+ public static string Success = nameof(Success);
+
+ ///
+ /// 查找类似 选项卡控件 的本地化字符串。
+ ///
+ public static string TabControl = nameof(TabControl);
+
+ ///
+ /// 查找类似 标签 的本地化字符串。
+ ///
+ public static string Tag = nameof(Tag);
+
+ ///
+ /// 查找类似 正文 的本地化字符串。
+ ///
+ public static string Text = nameof(Text);
+
+ ///
+ /// 查找类似 文本块 的本地化字符串。
+ ///
+ public static string TextBlock = nameof(TextBlock);
+
+ ///
+ /// 查找类似 文本框 的本地化字符串。
+ ///
+ public static string TextBox = nameof(TextBox);
+
+ ///
+ /// 查找类似 文本对话框 的本地化字符串。
+ ///
+ public static string TextDialog = nameof(TextDialog);
+
+ ///
+ /// 查找类似 文本对话框(控件中) 的本地化字符串。
+ ///
+ public static string TextDialogInControl = nameof(TextDialogInControl);
+
+ ///
+ /// 查找类似 文本对话框,带计时器 的本地化字符串。
+ ///
+ public static string TextDialogWithTimer = nameof(TextDialogWithTimer);
+
+ ///
+ /// 查找类似 时间条 的本地化字符串。
+ ///
+ public static string TimeBar = nameof(TimeBar);
+
+ ///
+ /// 查找类似 时间选择器 的本地化字符串。
+ ///
+ public static string TimePicker = nameof(TimePicker);
+
+ ///
+ /// 查找类似 提示 的本地化字符串。
+ ///
+ public static string Tip = nameof(Tip);
+
+ ///
+ /// 查找类似 标题 的本地化字符串。
+ ///
+ public static string Title = nameof(Title);
+
+ ///
+ /// 查找类似 这是标题 的本地化字符串。
+ ///
+ public static string TitleDemoStr1 = nameof(TitleDemoStr1);
+
+ ///
+ /// 查找类似 此项必填 的本地化字符串。
+ ///
+ public static string TitleDemoStr2 = nameof(TitleDemoStr2);
+
+ ///
+ /// 查找类似 标题在左侧 的本地化字符串。
+ ///
+ public static string TitleDemoStr3 = nameof(TitleDemoStr3);
+
+ ///
+ /// 查找类似 切换按钮 的本地化字符串。
+ ///
+ public static string ToggleButton = nameof(ToggleButton);
+
+ ///
+ /// 查找类似 工具条 的本地化字符串。
+ ///
+ public static string ToolBar = nameof(ToolBar);
+
+ ///
+ /// 查找类似 工具 的本地化字符串。
+ ///
+ public static string Tools = nameof(Tools);
+
+ ///
+ /// 查找类似 穿梭框 的本地化字符串。
+ ///
+ public static string Transfer = nameof(Transfer);
+
+ ///
+ /// 查找类似 内容过渡控件 的本地化字符串。
+ ///
+ public static string TransitioningContentControl = nameof(TransitioningContentControl);
+
+ ///
+ /// 查找类似 树视图 的本地化字符串。
+ ///
+ public static string TreeView = nameof(TreeView);
+
+ ///
+ /// 查找类似 试试关闭程序吧? 的本地化字符串。
+ ///
+ public static string Try2CloseApp = nameof(Try2CloseApp);
+
+ ///
+ /// 查找类似 类型 的本地化字符串。
+ ///
+ public static string Type = nameof(Type);
+
+ ///
+ /// 查找类似 等间距布局 的本地化字符串。
+ ///
+ public static string UniformSpacingPanel = nameof(UniformSpacingPanel);
+
+ ///
+ /// 查找类似 上传文件 的本地化字符串。
+ ///
+ public static string UploadFile = nameof(UploadFile);
+
+ ///
+ /// 查找类似 上传;上传中 的本地化字符串。
+ ///
+ public static string UploadStr = nameof(UploadStr);
+
+ ///
+ /// 查找类似 可见性 的本地化字符串。
+ ///
+ public static string Visibility = nameof(Visibility);
+
+ ///
+ /// 查找类似 VS 插件 的本地化字符串。
+ ///
+ public static string Vsix = nameof(Vsix);
+
+ ///
+ /// 查找类似 警告 的本地化字符串。
+ ///
+ public static string Warning = nameof(Warning);
+
+ ///
+ /// 查找类似 瀑布流 的本地化字符串。
+ ///
+ public static string WaterfallPanel = nameof(WaterfallPanel);
+
+ ///
+ /// 查找类似 水印 的本地化字符串。
+ ///
+ public static string Watermark = nameof(Watermark);
+
+ ///
+ /// 查找类似 网站 的本地化字符串。
+ ///
+ public static string Website = nameof(Website);
+
+ ///
+ /// 查找类似 窗口 的本地化字符串。
+ ///
+ public static string Window = nameof(Window);
+
}
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.tt b/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.tt
index ae2907da..a667f05c 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.tt
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/LangProvider.tt
@@ -13,8 +13,8 @@
{
langDic[item] =
@$"///
- /// {string.Format(Lang.LangComment, Lang.ResourceManager.GetString(item, Lang.Culture))}
- /// ";
+ /// {string.Format(Lang.LangComment, Lang.ResourceManager.GetString(item, Lang.Culture))}
+ /// ";
}
#>
using System.ComponentModel;
@@ -23,62 +23,66 @@ using System.Windows;
using System.Windows.Data;
using HandyControl.Tools;
-namespace HandyControlDemo.Properties.Langs
+namespace HandyControlDemo.Properties.Langs;
+
+public class LangProvider : INotifyPropertyChanged
{
- public class LangProvider : INotifyPropertyChanged
+ internal static LangProvider Instance { get; } = ResourceHelper.GetResource("DemoLangs");
+
+ private static string CultureInfoStr;
+
+ public static CultureInfo Culture
{
- internal static LangProvider Instance => ResourceHelper.GetResource("DemoLangs");
-
- private static string CultureInfoStr;
-
- public static CultureInfo Culture
+ get => Lang.Culture;
+ set
{
- get => Lang.Culture;
- set
- {
- if (value == null) return;
- if (Equals(CultureInfoStr, value.EnglishName)) return;
- Lang.Culture = value;
- CultureInfoStr = value.EnglishName;
+ if (value == null) return;
+ if (Equals(CultureInfoStr, value.EnglishName)) return;
+ Lang.Culture = value;
+ CultureInfoStr = value.EnglishName;
- Instance.UpdateLangs();
- }
+ Instance.UpdateLangs();
}
-
- public static string GetLang(string key) => Lang.ResourceManager.GetString(key, Culture);
-
- public static void SetLang(DependencyObject dependencyObject, DependencyProperty dependencyProperty, string key) =>
- BindingOperations.SetBinding(dependencyObject, dependencyProperty, new Binding(key)
- {
- Source = Instance,
- Mode = BindingMode.OneWay
- });
-
- private void UpdateLangs()
- {
-<#foreach(var item in propertyNameList){#>
- OnPropertyChanged(nameof(<#=item#>));
-<#}#>
- }
-
-<#foreach(var item in propertyNameList){#>
- <#=langDic[item]#>
- public string <#=item#> => Lang.<#=item#>;
-
-<#}#>
-
- public event PropertyChangedEventHandler PropertyChanged;
-
- protected virtual void OnPropertyChanged(string propertyName) =>
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
- public class LangKeys
+ public static string GetLang(string key)
+ {
+ return Lang.ResourceManager.GetString(key, Culture);
+ }
+
+ public static void SetLang(DependencyObject dependencyObject, DependencyProperty dependencyProperty, string key)
+ {
+ BindingOperations.SetBinding(dependencyObject, dependencyProperty, new Binding(key)
+ {
+ Source = Instance,
+ Mode = BindingMode.OneWay
+ });
+ }
+
+ private void UpdateLangs()
{
<#foreach(var item in propertyNameList){#>
- <#=langDic[item]#>
- public static string <#=item#> = nameof(<#=item#>);
-
+ OnPropertyChanged(nameof(<#=item#>));
<#}#>
}
-}
\ No newline at end of file
+
+<#foreach(var item in propertyNameList){#>
+ <#=langDic[item]#>
+ public string <#=item#> => Lang.<#=item#>;
+
+<#}#>
+
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ protected virtual void OnPropertyChanged(string propertyName) =>
+ PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+}
+
+public class LangKeys
+{
+<#foreach(var item in propertyNameList){#>
+ <#=langDic[item]#>
+ public static string <#=item#> = nameof(<#=item#>);
+
+<#}#>
+}
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/DemoTheme.cs b/src/Shared/HandyControlDemo_Shared/Resources/DemoTheme.cs
index d9d22af4..b9294fc4 100644
--- a/src/Shared/HandyControlDemo_Shared/Resources/DemoTheme.cs
+++ b/src/Shared/HandyControlDemo_Shared/Resources/DemoTheme.cs
@@ -4,16 +4,15 @@ using HandyControl.Data;
using HandyControl.Themes;
using HandyControl.Tools;
-namespace HandyControlDemo.Resources
-{
- public class DemoTheme : Theme
- {
- public override ResourceDictionary GetSkin(SkinType skinType) =>
- ResourceHelper.GetSkin(typeof(App).Assembly, "Resources/Themes", skinType);
+namespace HandyControlDemo.Resources;
- public override ResourceDictionary GetTheme() => new ResourceDictionary
- {
- Source = new Uri("pack://application:,,,/HandyControlDemo;component/Resources/Themes/Theme.xaml")
- };
- }
+public class DemoTheme : Theme
+{
+ public override ResourceDictionary GetSkin(SkinType skinType) =>
+ ResourceHelper.GetSkin(typeof(App).Assembly, "Resources/Themes", skinType);
+
+ public override ResourceDictionary GetTheme() => new()
+ {
+ Source = new Uri("pack://application:,,,/HandyControlDemo;component/Resources/Themes/Theme.xaml")
+ };
}
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ca-Es.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ca-Es.png
index b94c3fbb..a64586ed 100644
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ca-Es.png and b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ca-Es.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/cs.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/cs.png
new file mode 100644
index 00000000..45e95782
Binary files /dev/null and b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/cs.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/es.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/es.png
new file mode 100644
index 00000000..3761493d
Binary files /dev/null and b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/es.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ja.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ja.png
new file mode 100644
index 00000000..6b2e7cde
Binary files /dev/null and b/src/Shared/HandyControlDemo_Shared/Resources/Img/Flag/ja.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Animation_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Animation_16x.png
deleted file mode 100644
index 71666886..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Animation_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/BorderElement_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/BorderElement_16x.png
deleted file mode 100644
index 858e0717..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/BorderElement_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Brush_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Brush_16x.png
deleted file mode 100644
index 76b75c02..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Brush_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Bubble_16xLG.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Bubble_16xLG.png
deleted file mode 100644
index b836a649..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Bubble_16xLG.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ButtonClick_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ButtonClick_16x.png
deleted file mode 100644
index 7a31e40b..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ButtonClick_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ButtonGroup_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ButtonGroup_16x.png
deleted file mode 100644
index 929589fb..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ButtonGroup_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Calendar_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Calendar_16x.png
deleted file mode 100644
index 15f1602d..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Calendar_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Carousel_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Carousel_16x.png
deleted file mode 100644
index d9dc2060..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Carousel_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/CheckBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/CheckBox_16x.png
deleted file mode 100644
index de584d67..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/CheckBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/CheckboxList_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/CheckboxList_16x.png
deleted file mode 100644
index 856bab79..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/CheckboxList_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ColorPalette_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ColorPalette_16x.png
deleted file mode 100644
index a8f6097a..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ColorPalette_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ColorWheel_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ColorWheel_16x.png
deleted file mode 100644
index bd1eb49c..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ColorWheel_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ComboBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ComboBox_16x.png
deleted file mode 100644
index 9c9fa6c9..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ComboBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ContextMenu_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ContextMenu_16x.png
deleted file mode 100644
index 33f99af5..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ContextMenu_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DataGenerator_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DataGenerator_16x.png
deleted file mode 100644
index 75e8acf7..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DataGenerator_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DataGrid_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DataGrid_16x.png
deleted file mode 100644
index 04d545bb..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DataGrid_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DatePicker_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DatePicker_16x.png
deleted file mode 100644
index d6123e08..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DatePicker_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DetailDataView_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DetailDataView_16x.png
deleted file mode 100644
index 1a8667d3..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DetailDataView_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Dialog_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Dialog_16x.png
deleted file mode 100644
index fbb99b4f..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Dialog_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DotLarge_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DotLarge_16x.png
deleted file mode 100644
index 02028445..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DotLarge_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DottedSplitter_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DottedSplitter_16x.png
deleted file mode 100644
index 4815aab7..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/DottedSplitter_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Dynamic_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Dynamic_16x.png
deleted file mode 100644
index 17cf7abb..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Dynamic_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Effects_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Effects_16x.png
deleted file mode 100644
index cf6cb47b..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Effects_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Ellipsis_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Ellipsis_16x.png
deleted file mode 100644
index f6d88509..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Ellipsis_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Expander_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Expander_16x.png
deleted file mode 100644
index f6831469..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Expander_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/FlipVertical_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/FlipVertical_16x.png
deleted file mode 100644
index f60a1cd4..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/FlipVertical_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Flow_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Flow_16x.png
deleted file mode 100644
index a7d330b0..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Flow_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GoToTop_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GoToTop_16x.png
deleted file mode 100644
index 0dedbcbd..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GoToTop_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GridPane_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GridPane_16x.png
deleted file mode 100644
index 9d773eb4..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GridPane_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GroupBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GroupBox_16x.png
deleted file mode 100644
index 4c9cbbb8..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/GroupBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/HandyControl.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/HandyControl.png
deleted file mode 100644
index 49d606eb..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/HandyControl.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/HoverMenu_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/HoverMenu_16x.png
deleted file mode 100644
index 8778e134..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/HoverMenu_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ImageBrowser_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ImageBrowser_16x.png
deleted file mode 100644
index 233c787c..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ImageBrowser_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ImageStack_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ImageStack_16x.png
deleted file mode 100644
index 52890672..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ImageStack_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Image_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Image_16x.png
deleted file mode 100644
index c08e7cda..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Image_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/IncreaseHorizontalSpacing_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/IncreaseHorizontalSpacing_16x.png
deleted file mode 100644
index 0835d981..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/IncreaseHorizontalSpacing_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Label_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Label_16x.png
deleted file mode 100644
index 8089a296..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Label_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/LinearCarousel_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/LinearCarousel_16x.png
deleted file mode 100644
index 89c09325..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/LinearCarousel_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ListBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ListBox_16x.png
deleted file mode 100644
index fdf8dd83..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ListBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ListView_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ListView_16x.png
deleted file mode 100644
index 9e8614ab..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ListView_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Loading_Blue_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Loading_Blue_16x.png
deleted file mode 100644
index 99862b40..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Loading_Blue_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/MainMenuControl_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/MainMenuControl_16x.png
deleted file mode 100644
index 1019fb71..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/MainMenuControl_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Message_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Message_16x.png
deleted file mode 100644
index 1e039024..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Message_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/NotificationHub_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/NotificationHub_16x.png
deleted file mode 100644
index 74fd87ae..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/NotificationHub_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/NumericListBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/NumericListBox_16x.png
deleted file mode 100644
index a03614bc..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/NumericListBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/OutlinedRectangleTool_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/OutlinedRectangleTool_16x.png
deleted file mode 100644
index d2a6837e..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/OutlinedRectangleTool_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Paginator_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Paginator_16x.png
deleted file mode 100644
index 52b22cfe..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Paginator_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Panel_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Panel_16x.png
deleted file mode 100644
index f70cade8..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Panel_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PasswordBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PasswordBox_16x.png
deleted file mode 100644
index 91bd1acf..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PasswordBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Path_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Path_16x.png
deleted file mode 100644
index 9b611c2f..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Path_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PolygonHexagon_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PolygonHexagon_16x.png
deleted file mode 100644
index 21a229ac..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PolygonHexagon_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PopupCursor_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PopupCursor_16x.png
deleted file mode 100644
index 66c90cba..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PopupCursor_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Procedure_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Procedure_16x.png
deleted file mode 100644
index f2e7d2f1..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Procedure_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ProgressBar_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ProgressBar_16x.png
deleted file mode 100644
index 3a789588..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ProgressBar_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ProgressButton_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ProgressButton_16x.png
deleted file mode 100644
index 0cf2490b..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ProgressButton_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PropertyGridEditorPart_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PropertyGridEditorPart_16x.png
deleted file mode 100644
index 49fd6100..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/PropertyGridEditorPart_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RadioButton_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RadioButton_16x.png
deleted file mode 100644
index 3c07d3ab..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RadioButton_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RepeatButton_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RepeatButton_16x.png
deleted file mode 100644
index 94cdd5eb..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RepeatButton_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RichTextBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RichTextBox_16x.png
deleted file mode 100644
index 93c8e6e6..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/RichTextBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ScrollBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ScrollBox_16x.png
deleted file mode 100644
index 161e4828..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ScrollBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Search_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Search_16x.png
deleted file mode 100644
index 8b705d06..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Search_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Shield_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Shield_16x.png
deleted file mode 100644
index 8fa5ff93..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Shield_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Slider_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Slider_16x.png
deleted file mode 100644
index 7e3c570d..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Slider_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SortAscending_grey_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SortAscending_grey_16x.png
deleted file mode 100644
index f8044163..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SortAscending_grey_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SplitButton_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SplitButton_16x.png
deleted file mode 100644
index 5bb43174..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SplitButton_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SplitterControl_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SplitterControl_16x.png
deleted file mode 100644
index 45d577aa..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/SplitterControl_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Star.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Star.png
deleted file mode 100644
index 1e1d20ea..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Star.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TabPage_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TabPage_16x.png
deleted file mode 100644
index 3969b8eb..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TabPage_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Tag_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Tag_16x.png
deleted file mode 100644
index e0af7a89..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Tag_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TextBlock_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TextBlock_16x.png
deleted file mode 100644
index cdf786d2..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TextBlock_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TextBox_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TextBox_16x.png
deleted file mode 100644
index 5c6974c5..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TextBox_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TimePicker_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TimePicker_16x.png
deleted file mode 100644
index 73aa365d..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TimePicker_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Time_color_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Time_color_16x.png
deleted file mode 100644
index 350c2831..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Time_color_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Timeline_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Timeline_16x.png
deleted file mode 100644
index aafb7aa7..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Timeline_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Toggle_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Toggle_16x.png
deleted file mode 100644
index e553d259..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Toggle_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ToolBar_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ToolBar_16x.png
deleted file mode 100644
index 56e6d4e4..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/ToolBar_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Transfer_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Transfer_16x.png
deleted file mode 100644
index 0ab98dd1..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/Transfer_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TransformRelative_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TransformRelative_16x.png
deleted file mode 100644
index 7d73d0e5..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TransformRelative_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TransitioningContentControl_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TransitioningContentControl_16x.png
deleted file mode 100644
index 8c7465e1..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TransitioningContentControl_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TreeView_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TreeView_16x.png
deleted file mode 100644
index 8e061146..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/TreeView_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/User_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/User_16x.png
deleted file mode 100644
index 8e5bd8a4..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/User_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/VSO_Card_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/VSO_Card_16x.png
deleted file mode 100644
index 034f8cf4..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/VSO_Card_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/View_Portrait_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/View_Portrait_16x.png
deleted file mode 100644
index f02919d2..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/View_Portrait_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WPFFlowDocument_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WPFFlowDocument_16x.png
deleted file mode 100644
index 7f8e5395..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WPFFlowDocument_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WindowScreenshot_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WindowScreenshot_16x.png
deleted file mode 100644
index 7b542617..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WindowScreenshot_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WindowsForm_16x.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WindowsForm_16x.png
deleted file mode 100644
index 52004d25..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/WindowsForm_16x.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/brackets_Square_16xLG.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/brackets_Square_16xLG.png
deleted file mode 100644
index a93a4c23..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/brackets_Square_16xLG.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/frame_16xLG.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/frame_16xLG.png
deleted file mode 100644
index 7efa4c49..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/frame_16xLG.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/layout-FlexLayout-16.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/layout-FlexLayout-16.png
deleted file mode 100644
index 3b24bd18..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/layout-FlexLayout-16.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/thumbs_up.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/thumbs_up.png
deleted file mode 100644
index 9157f8b1..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/thumbs_up.png and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/Slack.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/Slack.png
new file mode 100644
index 00000000..429ea901
Binary files /dev/null and b/src/Shared/HandyControlDemo_Shared/Resources/Img/Slack.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/qq_group_1.jpg b/src/Shared/HandyControlDemo_Shared/Resources/Img/qq_group_1.jpg
deleted file mode 100644
index 378fc848..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/qq_group_1.jpg and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/qq_group_2.jpg b/src/Shared/HandyControlDemo_Shared/Resources/Img/qq_group_2.jpg
deleted file mode 100644
index 2649aa81..00000000
Binary files a/src/Shared/HandyControlDemo_Shared/Resources/Img/qq_group_2.jpg and /dev/null differ
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Brushes.xaml b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Brushes.xaml
index 45119d2b..79b21c74 100644
--- a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Brushes.xaml
+++ b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Brushes.xaml
@@ -40,7 +40,6 @@
-
@@ -49,8 +48,1344 @@
-
-
+
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Colors/ColorsDark.xaml b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Colors/ColorsDark.xaml
index 46258ae5..05da8bdf 100644
--- a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Colors/ColorsDark.xaml
+++ b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Colors/ColorsDark.xaml
@@ -13,8 +13,8 @@
#ff929292
#2FFFFFFF
#FFAAAAFF
- #18FFFFFF
+ Transparent
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Geometries.xaml b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Geometries.xaml
index 3e407625..4a4f1afa 100644
--- a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Geometries.xaml
+++ b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Basic/Geometries.xaml
@@ -9,7 +9,6 @@
M512 0C229.12 0 0 229.12 0 512c0 226.56 146.56 417.92 350.08 485.76 25.6 4.48 35.2-10.88 35.2-24.32 0-12.16-0.64-52.48-0.64-95.36-128.64 23.68-161.92-31.36-172.16-60.16-5.76-14.72-30.72-60.16-52.48-72.32-17.92-9.6-43.52-33.28-0.64-33.92 40.32-0.64 69.12 37.12 78.72 52.48 46.08 77.44 119.68 55.68 149.12 42.24 4.48-33.28 17.92-55.68 32.64-68.48-113.92-12.8-232.96-56.96-232.96-252.8 0-55.68 19.84-101.76 52.48-137.6-5.12-12.8-23.04-65.28 5.12-135.68 0 0 42.88-13.44 140.8 52.48 40.96-11.52 84.48-17.28 128-17.28 43.52 0 87.04 5.76 128 17.28 97.92-66.56 140.8-52.48 140.8-52.48 28.16 70.4 10.24 122.88 5.12 135.68 32.64 35.84 52.48 81.28 52.48 137.6 0 196.48-119.68 240-233.6 252.8 18.56 16 34.56 46.72 34.56 94.72 0 68.48-0.64 123.52-0.64 140.8 0 13.44 9.6 29.44 35.2 24.32A512.832 512.832 0 0 0 1024 512c0-282.88-229.12-512-512-512z
M449.722947 199.412211H706.021053c130.967579 0 237.136842 106.169263 237.136842 237.136842v256.298105c0 130.967579-106.169263 237.136842-237.136842 237.136842H449.722947c-130.965895 0-237.136842-106.169263-237.136842-237.136842V436.549053c0-130.967579 106.170947-237.136842 237.136842-237.136842z m-201.205894-21.557895c0-64.299789-70.085053-104.704-125.850948-72.55579s-55.764211 112.96 0 145.111579 125.850947-8.257684 125.850948-72.555789z m239.528421 234.74021c0-68.003368-74.088421-110.736842-133.037474-76.734315s-58.950737 119.467789 0 153.470315 133.039158-8.730947 133.039158-76.736zM835.368421 692.847158c0-117.596632-128.154947-191.494737-230.123789-132.695579s-101.970526 206.593684 0 265.391158S835.368421 810.443789 835.368421 692.847158z
M430.079734 481.464543c45.196365 45.596478 118.486578 45.596478 163.68499 0l360.684736-324.939627c0.547469 3.751441 1.13894 7.490601 1.13894 11.401678l0 404.753417 0 116.754121c0 42.995233-34.547841 77.838809-77.145008 77.838809L145.397996 767.272941c-42.597167 0-77.145008-34.844599-77.145008-77.838809L68.252988 494.839155 68.252988 167.926594c0-3.911076 0.593518-7.65126 1.139963-11.401678L430.079734 481.464543zM910.960992 74.226538 562.044278 387.28558c-38.470173 38.811957-62.276369 38.811957-100.770078 0L112.538611 74.408687c10.011005-4.789073 21.069875-7.673773 32.859385-7.673773l733.044372 0C890.095779 66.735937 901.065622 69.539796 910.960992 74.226538z
- M260.8 645H160V0h100.8v645zM461.8 152.2h-100.8V1024h100.8V152.2z m201.2 0h-100.8V1024h100.8V152.2zM864 152h-100.8v494H864V152z
M698.026667 597.333333C701.44 569.173333 704 541.013333 704 512 704 482.986667 701.44 454.826667 698.026667 426.666667L842.24 426.666667C849.066667 453.973333 853.333333 482.56 853.333333 512 853.333333 541.44 849.066667 570.026667 842.24 597.333333M622.506667 834.56C648.106667 787.2 667.733333 736 681.386667 682.666667L807.253333 682.666667C766.293333 753.066667 701.013333 807.68 622.506667 834.56M611.84 597.333333 412.16 597.333333C407.893333 569.173333 405.333333 541.013333 405.333333 512 405.333333 482.986667 407.893333 454.4 412.16 426.666667L611.84 426.666667C615.68 454.4 618.666667 482.986667 618.666667 512 618.666667 541.013333 615.68 569.173333 611.84 597.333333M512 851.626667C476.586667 800.426667 448 743.68 430.506667 682.666667L593.493333 682.666667C576 743.68 547.413333 800.426667 512 851.626667M341.333333 341.333333 216.746667 341.333333C257.28 270.506667 322.986667 215.893333 401.066667 189.44 375.466667 236.8 356.266667 288 341.333333 341.333333M216.746667 682.666667 341.333333 682.666667C356.266667 736 375.466667 787.2 401.066667 834.56 322.986667 807.68 257.28 753.066667 216.746667 682.666667M181.76 597.333333C174.933333 570.026667 170.666667 541.44 170.666667 512 170.666667 482.56 174.933333 453.973333 181.76 426.666667L325.973333 426.666667C322.56 454.826667 320 482.986667 320 512 320 541.013333 322.56 569.173333 325.973333 597.333333M512 171.946667C547.413333 223.146667 576 280.32 593.493333 341.333333L430.506667 341.333333C448 280.32 476.586667 223.146667 512 171.946667M807.253333 341.333333 681.386667 341.333333C667.733333 288 648.106667 236.8 622.506667 189.44 701.013333 216.32 766.293333 270.506667 807.253333 341.333333M512 85.333333C276.053333 85.333333 85.333333 277.333333 85.333333 512 85.333333 747.52 276.48 938.666667 512 938.666667 747.52 938.666667 938.666667 747.52 938.666667 512 938.666667 276.48 747.52 85.333333 512 85.333333Z
m 41.416254,90 c -0.327378,-7.4702 0.20833,-32.7284 0,-39.901 -5.386902,-0.2083 -4.521603,0.3274 -9.848987,0 0.20833,-5.50595 0.36436,-7.66666 0.126269,-13.32142 4.646472,0.0181 3.439989,-0.009 9.848987,-0.1894 0.09586,-3.7736 0.133082,-3.0791 0.126269,-7.38674 0.18259,-3.73943 -0.486609,-10.54308 4.293149,-14.96288 4.779758,-4.4198 13.606811,-3.64808 22.223356,-3.53554 -0.04417,5.73754 -0.03936,9.37986 0,12.87945 -5.049924,0.46388 -7.309188,-0.33689 -10.85914,1.26269 -1.403378,3.17794 -1.569601,4.80531 -1.262691,11.93242 3.147964,-0.13336 8.201788,-0.1378 12.626907,0 -0.995158,6.00899 -0.948285,7.62376 -1.767767,13.06882 -3.676625,0.088 -5.605721,-0.1488 -11.111678,0 -0.148814,6.756 0.357147,33.0107 0,40.1536 -6.428576,0.1786 -8.174438,-0.03 -14.394674,0 z
m 10.44335,90 c 11.073313,0.3952 19.483106,-1.8358 23.901837,-7.1603 -7.9736,-1.4292 -11.832311,-4.1933 -15.078321,-11.0837 3.459698,0.8219 5.795894,0.6358 7.606781,-0.607 -7.19593,-1.719 -12.734543,-6.7971 -13.741664,-15.836 2.766355,1.55307 5.466848,2.66623 7.828682,2.0203 -4.336544,-2.92911 -9.838998,-10.47636 -5.555839,-22.47589 8.400675,11.87052 23.824269,17.67568 33.840111,17.67767 -0.936406,-9.74688 5.88057,-19.46521 15.302849,-19.97853 8.13118,-0.50719 10.57457,4.01944 12.476346,4.82624 3.644547,0.13419 7.393301,-1.74401 10.354063,-3.53553 -1.380842,4.47157 -5.06769,5.62903 -6.313453,8.58629 5.42317,0.41513 5.891376,-1.53111 8.333758,-2.0203 -2.071414,3.75017 -5.393863,5.00034 -7.323606,8.08122 -1.633654,16.12573 -5.16049,27.57123 -14.647212,36.36553 -13.825764,11.3764 -34.755458,17.369 -56.984332,5.14 z
@@ -21,7 +20,6 @@
M827.904 541.184a278.592 278.592 0 0 0 0-58.368l73.728-58.368c15.872-13.056 20.224-35.584 9.728-53.504l-78.592-137.728c-9.984-17.408-31.232-25.856-51.712-18.176l-86.528 35.072c-15.872-11.52-32.512-21.248-49.664-29.184l-12.8-92.928c-3.072-20.224-20.736-35.584-41.216-35.584h-157.44c-20.736 0-38.144 14.848-41.216 35.84L378.88 221.44c-17.152 7.936-33.792 17.92-49.664 29.184L242.688 215.296c-18.688-7.168-41.216 0.768-51.2 18.176L112.64 371.2c-10.24 17.92-6.144 40.448 10.24 53.76l73.472 58.112c-1.024 9.472-1.536 19.2-1.536 29.184 0 9.728 0.512 19.456 1.536 29.184l-73.984 58.368c-15.872 13.056-19.968 35.584-9.728 53.248l78.848 137.728c9.984 17.408 32 25.856 51.456 17.92l86.528-35.072c15.872 11.52 32.512 21.248 49.664 29.184l13.056 93.696c3.328 20.48 20.48 35.328 41.216 35.328h157.44c20.48 0 38.144-15.36 41.216-35.84l13.056-93.184c17.152-7.936 33.792-17.664 49.664-29.184l86.784 35.328c4.864 1.792 9.984 2.816 15.104 2.816 14.848 0 28.672-7.936 36.096-20.992l78.592-137.728c10.24-17.664 6.4-40.192-9.984-53.76l-73.472-58.112z m-25.344 231.168l-99.584-40.448c-7.424-3.072-15.872-1.792-22.272 3.072-19.712 15.36-40.704 27.648-62.464 36.608-7.424 3.072-12.544 9.728-13.568 17.664l-14.592 104.96-155.392 2.304-15.104-107.264c-1.024-7.936-6.4-14.592-13.568-17.664-21.76-8.96-42.752-21.504-62.464-36.608-4.096-3.072-8.96-4.608-13.824-4.608-2.816 0-5.888 0.512-8.448 1.536l-96.256 41.472-80.896-137.216 84.48-66.816c6.144-4.864 9.472-12.8 8.448-20.48-1.536-12.032-2.56-24.32-2.56-36.608 0-12.288 1.024-24.576 2.56-36.608 1.024-7.936-2.048-15.616-8.448-20.48l-83.712-64 76.544-139.264 99.584 40.448c7.424 3.072 15.872 1.792 22.272-3.072 19.712-15.36 40.96-27.648 62.72-36.864 7.424-3.072 12.544-9.728 13.568-17.664l12.544-104.704 157.696-2.304 15.104 107.264c1.024 7.936 6.4 14.592 13.568 17.664 21.76 8.96 42.752 21.504 62.464 36.864 6.4 4.864 14.848 6.144 22.272 3.072l96.256-41.472 80.896 137.216-84.48 66.816c-6.144 4.864-9.472 12.544-8.448 20.48 1.536 12.032 2.56 24.32 2.56 36.608 0 12.288-1.024 24.576-2.56 36.608-1.024 7.936 2.304 15.616 8.448 20.48l83.712 63.744-77.056 139.264zM512 345.6c-91.136 0-165.12 74.752-165.12 166.4s73.984 166.4 165.12 166.4 165.12-74.752 165.12-166.4-73.984-166.4-165.12-166.4z m0 297.216c-71.168 0-129.28-58.624-129.28-130.816 0-72.192 58.112-130.816 129.28-130.816s129.28 58.624 129.28 130.816c0 72.192-57.856 130.816-129.28 130.816z
M657.486769 287.744c5.671385 0 11.264-5.671385 16.935385-5.671385l186.289231-124.140307c5.592615-5.592615 16.935385-16.935385 16.935384-28.199385V73.334154A74.673231 74.673231 0 0 0 804.233846 0H606.680615v220.002462c0 22.606769-16.935385 33.870769-39.463384 33.870769H454.262154c-22.528 0-39.463385-16.935385-39.463385-33.870769V5.671385H222.838154c-45.134769 0-79.005538 33.870769-79.005539 73.255384v56.477539c0 11.264 5.671385 22.528 16.935385 28.199384l186.289231 124.140308h16.935384C200.310154 349.735385 98.697846 507.746462 121.304615 693.878154c22.528 169.275077 169.353846 310.350769 344.221539 327.207384 237.095385 28.199385 440.32-152.339692 440.32-377.934769 0-158.011077-101.612308-299.008-248.359385-355.406769z m-146.747077 671.271385C335.793231 959.015385 189.046154 818.018462 189.046154 643.150769c0-174.867692 146.747077-310.350769 321.693538-310.350769 174.946462 0 321.693538 141.075692 321.693539 315.943385s-146.747077 310.350769-321.693539 310.350769zM670.798769 572.967385l-68.371692-11.185231a31.507692 31.507692 0 0 1-28.514462-16.777846l-28.514461-55.926154c-17.092923-27.963077-51.278769-27.963077-68.371692 0l-28.514462 55.926154a31.507692 31.507692 0 0 1-28.514462 16.777846l-68.371692 11.185231c-28.514462 5.592615-39.936 39.148308-17.092923 61.44l45.528615 39.227077c5.750154 11.185231 17.171692 22.370462 11.421539 33.555692l-11.421539 67.111384c-5.671385 27.963077 28.514462 50.333538 51.357539 33.555693l62.700308-27.963077a37.021538 37.021538 0 0 1 34.185846 0l62.700307 33.555692c28.514462 16.777846 57.028923-5.592615 51.27877-33.555692l-11.421539-67.111385c0-16.777846 5.750154-27.963077 11.421539-33.555692l51.278769-44.740923a38.596923 38.596923 0 0 0-22.843077-61.518769z
M1185.92 769.92h-1.28c0.576 0 0.96 0.64 1.536 0.704h0.384l-0.64-0.64z m0.256 0.704c-5.952 0.064-20.928 3.2-36.736 3.2-49.92 0-67.2-23.04-67.2-53.12V520.32h101.76c5.76 0 10.24-5.12 10.24-12.16v-108.8c0-5.76-5.12-10.88-10.24-10.88h-101.76V253.44c0-5.12-3.2-8.32-8.96-8.32h-138.24c-5.76 0-8.96 3.2-8.96 8.32v138.88s-69.76 17.28-74.24 17.92c-5.12 1.28-8.32 5.76-8.32 10.88v87.04c0 7.04 5.12 12.16 10.88 12.16h71.04v209.92c0 156.16 108.8 172.16 183.04 172.16 33.92 0 74.88-10.88 81.28-14.08 3.84-1.28 5.76-5.76 5.76-10.24v-96a11.328 11.328 0 0 0-9.344-11.52z m1516.544-140.8c0-115.84-46.72-131.2-96-126.08-38.4 2.56-69.12 21.76-69.12 21.76v225.28s31.36 21.76 78.08 23.04c65.92 1.92 87.04-21.76 87.04-144z m155.52-10.24c0 219.52-71.04 282.24-195.2 282.24-104.96 0-161.28-53.12-161.28-53.12s-2.56 29.44-5.76 33.28c-1.92 3.84-5.12 5.12-8.96 5.12h-94.72c-6.4 0-12.16-5.12-12.16-10.88l1.28-711.04c0-5.76 5.12-10.88 10.88-10.88h136.32c5.76 0 10.88 5.12 10.88 10.88v241.28s52.48-33.92 129.28-33.92l-0.64-1.28c76.8 0 190.08 28.8 190.08 248.32z m-558.08-231.04H2165.76c-7.04 0-10.88 5.12-10.88 12.16v348.16s-35.2 24.96-83.2 24.96-62.08-21.76-62.08-69.76V400c0-5.76-5.12-10.88-10.88-10.88h-136.96c-5.76 0-10.88 5.12-10.88 10.88v327.04c0 140.8 78.72 176 186.88 176 88.96 0 161.28-49.28 161.28-49.28s3.2 24.96 5.12 28.8c1.28 3.2 5.76 5.76 10.24 5.76h85.76c7.04 0 10.88-5.12 10.88-10.88l1.28-478.08c0-5.76-5.12-10.88-12.16-10.88z m-1516.8-0.64h-136.32c-5.76 0-10.88 5.76-10.88 12.8v469.76c0 12.8 8.32 17.28 19.2 17.28h122.88c12.8 0 16-5.76 16-17.28V398.72c0-5.76-5.12-10.88-10.88-10.88z m-67.2-216.32c-49.28 0-88.32 39.04-88.32 88.32 0 49.28 39.04 88.32 88.32 88.32 48 0 87.04-39.04 87.04-88.32 0-49.28-39.04-88.32-87.04-88.32z m1055.36-16h-135.04c-5.76 0-10.88 5.12-10.88 10.88v261.76h-211.84V166.4c0-5.76-5.12-10.88-10.88-10.88h-136.32c-5.76 0-10.88 5.12-10.88 10.88v711.04c0 5.76 5.76 10.88 10.88 10.88h136.32c5.76 0 10.88-5.12 10.88-10.88V573.44h211.84l-1.28 304c0 5.76 5.12 10.88 10.88 10.88h136.32c5.76 0 10.88-5.12 10.88-10.88V166.4c0-5.76-5.12-10.88-10.88-10.88zM563.84 470.4v367.36c0 2.56-0.64 7.04-3.84 8.32 0 0-80 56.96-211.84 56.96-159.36 0-348.16-49.92-348.16-378.88S165.12 127.36 326.4 128c139.52 0 195.84 31.36 204.8 37.12 2.56 3.2 3.84 5.76 3.84 8.96L508.16 288c0 5.76-5.76 12.8-12.8 10.88-23.04-7.04-57.6-21.12-138.88-21.12-94.08 0-195.2 26.88-195.2 238.72s96 236.8 165.12 236.8c58.88 0 80-7.04 80-7.04v-147.2H312.32c-7.04 0-12.16-5.12-12.16-10.88V470.4c0-5.76 5.12-10.88 12.16-10.88h239.36c7.04 0 12.16 5.12 12.16 10.88z
- M936.194300839506 691.6934192494618c-5.891587367822223-94.26540047423211-70.69904970840491-170.8560375504593-106.04857520987652-212.09715041975304 5.891587367822223-11.783174735644446 17.674762103466666-79.53643140740742-29.457938133649378-126.66913164452346V349.981342854005c0-182.63921228610366-129.61492468116543-315.1999312984493-294.57937486380246-315.1999312984493s-294.57937615834066 132.5607190123457-294.57937615834066 315.1999312984493v2.9457943311802466c-47.132700237116055 47.132700237116055-35.349525501471604 114.885956908879-29.45793683911111 126.66913164452346-35.349525501471604 41.24111286929382-100.15698784205432 117.83174994552098-106.04857520987652 212.09715041975304 0 23.56634947128889 2.9457943311802466 58.91587497276049 14.728969066824689 76.59063707622718 14.728969066824689 20.62055643464691 55.97008193611851-2.9457943311802466 82.48222444404936-64.80746234058272 8.837381699002469 29.457938133649378 26.51214380246913 73.64484403958517 67.75325667176295 126.66913164452346-70.69904970840491 14.728969066824689-88.37381310640988 85.42801877522965-64.80746234058272 123.72333731334321 17.674762103466666 26.51214380246913 53.02428760493826 47.132700237116055 120.77754298216297 47.132700237116055 114.885956908879 0 167.9102445138173-32.40373117029136 191.4765952796444-53.02428760493826 5.891587367822223-5.891587367822223 11.783174735644446-5.891587367822223 20.620555140108642-5.891587367822223 8.837381699002469 0 14.728969066824689 2.9457943311802466 20.62055643464691 5.891587367822223 23.56634947128889 20.62055643464691 73.64484403958517 53.02428760493826 191.4765939851062 53.02428760493826 64.80746234058272 0 103.10278087869627-20.62055643464691 120.77754427670124-47.132700237116055 23.56634947128889-38.29531853811359 2.9457943311802466-106.04857520987652-64.80746234058272-123.72333731334321 41.24111286929382-55.97008193611851 58.91587497276049-100.15698784205432 67.75325667176295-126.66913164452346 29.457938133649378 61.86166930394074 67.75325667176295 85.42801877522965 82.48222444404936 64.80746234058272 5.891587367822223-17.674762103466666 11.783174735644446-53.02428760493826 8.837381699002469-76.59063707622718z m0 0
M838.4 325.12 554.24 479.36C528 493.44 512 521.6 512 552.96l0 298.24c0 32 31.36 53.12 57.6 38.4l284.16-154.24c25.6-14.08 42.24-42.24 42.24-73.6L896 364.16C896 331.52 864.64 311.04 838.4 325.12zM405.76 478.72 121.6 325.12C95.36 311.04 64 331.52 64 363.52l0 299.52c0 31.36 16 59.52 42.24 73.6l284.16 153.6C416.64 904.32 448 883.2 448 851.2L448 552.32C448 520.96 432 492.8 405.76 478.72zM812.16 255.36c13.44-7.04 19.84-19.2 18.56-30.72 1.28-12.16-5.12-23.68-18.56-30.72L522.88 42.88c-12.8-7.04-28.16-10.24-43.52-10.24-15.36 0-30.72 3.2-43.52 10.24L146.56 193.28C133.12 200.32 127.36 212.48 128 224 127.36 236.16 133.12 248.32 146.56 255.36l289.28 150.4c12.8 7.04 28.16 10.24 43.52 10.24 15.36 0 30.72-3.2 43.52-10.24L812.16 255.36z
M1137.575865 0l0 795.939663-267.130435 228.060337-870.44543 0 0-1024 1137.575865 0zM795.939663 682.363798l-626.030169 0 0 113.575865 626.030169 0 0-113.575865zM966.757764 455.212067l-796.84827 0 0 113.575865 796.84827 0 0-113.575865zM966.757764 227.15173l-796.84827 0 0 114.484472 796.84827 0 0-114.484472z
M23.063,0L11,12L3,6L0,7v15l3,2l8-6l11.875,12L30,27V2.938L23.063,0z M3,19v-8l5,4L3,19z M23,21l-8-6l8-6V21z
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Styles/Style.xaml b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Styles/Style.xaml
index ff888595..46595c10 100644
--- a/src/Shared/HandyControlDemo_Shared/Resources/Themes/Styles/Style.xaml
+++ b/src/Shared/HandyControlDemo_Shared/Resources/Themes/Styles/Style.xaml
@@ -5,30 +5,50 @@
xmlns:ex="clr-namespace:HandyControlDemo.Tools.Extension">
-
-
+
+
+
+
-
-
-
+
-
+
@@ -117,7 +106,7 @@
-
+
@@ -125,19 +114,19 @@
-
+
-
+
@@ -189,18 +178,18 @@
@@ -210,12 +199,16 @@
-
-
+
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/xshd/CSharp-Dark.xshd b/src/Shared/HandyControlDemo_Shared/Resources/xshd/CSharp-Dark.xshd
new file mode 100644
index 00000000..f7383ffd
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/Resources/xshd/CSharp-Dark.xshd
@@ -0,0 +1,310 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ TODO
+ FIXME
+
+
+ HACK
+ UNDONE
+
+
+
+
+
+
+ \#
+
+
+
+ (define|undef|if|elif|else|endif|line)\b
+
+
+
+ //
+
+
+
+
+
+ (region|endregion|error|warning|pragma)\b
+
+
+
+
+
+
+ ///(?!/)
+
+
+
+
+
+
+
+ //
+
+
+
+ /\*
+ \*/
+
+
+
+ "
+ "
+
+
+
+
+
+
+
+ '
+ '
+
+
+
+
+
+
+
+ @"
+ "
+
+
+
+
+
+
+
+ \$"
+ "
+
+
+
+
+
+
+
+
+
+
+
+ @[\w\d_]+
+
+
+
+ this
+ base
+
+
+
+ as
+ is
+ new
+ sizeof
+ typeof
+ stackalloc
+
+
+
+ true
+ false
+
+
+
+ else
+ if
+ switch
+ case
+ default
+ do
+ for
+ foreach
+ in
+ while
+ lock
+
+
+
+ break
+ continue
+ goto
+ return
+
+
+
+ yield
+ partial
+ global
+ where
+ select
+ group
+ by
+ into
+ from
+ ascending
+ descending
+ orderby
+ let
+ join
+ on
+ equals
+ var
+ dynamic
+ await
+
+
+
+ try
+ throw
+ catch
+ finally
+
+
+
+ checked
+ unchecked
+
+
+
+ fixed
+ unsafe
+
+
+
+ bool
+ byte
+ char
+ decimal
+ double
+ enum
+ float
+ int
+ long
+ sbyte
+ short
+ struct
+ uint
+ ushort
+ ulong
+
+
+
+ class
+ interface
+ delegate
+ object
+ string
+ void
+
+
+
+ explicit
+ implicit
+ operator
+
+
+
+ params
+ ref
+ out
+
+
+
+ abstract
+ const
+ event
+ extern
+ override
+ readonly
+ sealed
+ static
+ virtual
+ volatile
+ async
+
+
+
+ public
+ protected
+ private
+ internal
+
+
+
+ namespace
+ using
+
+
+
+ get
+ set
+ add
+ remove
+
+
+
+ null
+ value
+
+
+
+ nameof
+
+
+
+
+ \b
+ [\d\w_]+ # an identifier
+ (?=\s*\() # followed by (
+
+
+
+
+ \b0[xX][0-9a-fA-F]+ # hex number
+ |
+ ( \b\d+(\.[0-9]+)? #number with optional floating point
+ | \.[0-9]+ #or just starting with floating point
+ )
+ ([eE][+-]?[0-9]+)? # optional exponent
+
+
+
+ [?,.;()\[\]{}+\-/%*<>^+~!|&]+
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/xshd/XML-Dark.xshd b/src/Shared/HandyControlDemo_Shared/Resources/xshd/XML-Dark.xshd
new file mode 100644
index 00000000..72f67744
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/Resources/xshd/XML-Dark.xshd
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <!--
+ -->
+
+
+ <!\[CDATA\[
+ ]]>
+
+
+ <!DOCTYPE
+ >
+
+
+ <\?
+ \?>
+
+
+ <
+ >
+
+
+
+ "
+ "|(?=<)
+
+
+ '
+ '|(?=<)
+
+ [\d\w_\-\.]+(?=(\s*=))
+ =
+
+
+
+
+
+
+
+ &
+ [\w\d\#]+
+ ;
+
+
+
+ &
+ [\w\d\#]*
+ #missing ;
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs b/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs
index 1bbd4440..d7660afd 100644
--- a/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs
+++ b/src/Shared/HandyControlDemo_Shared/Service/Data/DataService.cs
@@ -1,448 +1,440 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
-using System.Globalization;
using System.IO;
using System.Linq;
using System.Net;
using System.Windows;
using HandyControl.Data;
+using HandyControl.Tools;
using HandyControlDemo.Data;
using HandyControlDemo.Properties.Langs;
-using HandyControlDemo.Tools.Converter;
using Newtonsoft.Json;
-namespace HandyControlDemo.Service
+namespace HandyControlDemo.Service;
+
+public class DataService
{
- public class DataService
+ internal ObservableCollection GetTabControlDemoDataList()
{
- internal ObservableCollection GetTabControlDemoDataList()
+ return new()
{
- return new ObservableCollection
+ new TabControlDemoModel
{
- new TabControlDemoModel
- {
- Header = "Success",
- BackgroundToken = ResourceToken.SuccessBrush
- },
- new TabControlDemoModel
- {
- Header = "Primary",
- BackgroundToken = ResourceToken.PrimaryBrush
- },
- new TabControlDemoModel
- {
- Header = "Warning",
- BackgroundToken = ResourceToken.WarningBrush
- },
- new TabControlDemoModel
- {
- Header = "Danger",
- BackgroundToken = ResourceToken.DangerBrush
- },
- new TabControlDemoModel
- {
- Header = "Info",
- BackgroundToken = ResourceToken.InfoBrush
- }
- };
- }
-
- internal List GetDemoDataList()
- {
- var list = new List();
- for (var i = 1; i <= 20; i++)
+ Header = "Success",
+ BackgroundToken = ResourceToken.SuccessBrush
+ },
+ new TabControlDemoModel
{
- var dataList = new List();
- for (var j = 0; j < 3; j++)
- {
- dataList.Add(new DemoDataModel
- {
- Index = j,
- IsSelected = j % 2 == 0,
- Name = $"SubName{j}",
- Type = (DemoType) j
- });
- }
- var model = new DemoDataModel
- {
- Index = i,
- IsSelected = i % 2 == 0,
- Name = $"Name{i}",
- Type = (DemoType) i,
- DataList = dataList,
- ImgPath = $"/HandyControlDemo;component/Resources/Img/Avatar/avatar{i % 6 + 1}.png",
- Remark = new string(i.ToString()[0], 10)
- };
- list.Add(model);
+ Header = "Primary",
+ BackgroundToken = ResourceToken.PrimaryBrush
+ },
+ new TabControlDemoModel
+ {
+ Header = "Warning",
+ BackgroundToken = ResourceToken.WarningBrush
+ },
+ new TabControlDemoModel
+ {
+ Header = "Danger",
+ BackgroundToken = ResourceToken.DangerBrush
+ },
+ new TabControlDemoModel
+ {
+ Header = "Info",
+ BackgroundToken = ResourceToken.InfoBrush
}
+ };
+ }
- return list;
- }
-
- internal List GetDemoDataList(int count)
+ internal List GetDemoDataList()
+ {
+ var list = new List();
+ for (var i = 1; i <= 20; i++)
{
- var list = new List();
- for (var i = 1; i <= count; i++)
+ var dataList = new List();
+ for (var j = 0; j < 3; j++)
{
- var index = i % 6 + 1;
- var model = new DemoDataModel
+ dataList.Add(new DemoDataModel
{
- Index = i,
- IsSelected = i % 2 == 0,
- Name = $"Name{i}",
- Type = (DemoType) index,
- ImgPath = $"/HandyControlDemo;component/Resources/Img/Avatar/avatar{index}.png",
- Remark = new string(i.ToString()[0], 10)
- };
- list.Add(model);
- }
-
- return list;
- }
-
- internal List GetComboBoxDemoDataList()
- {
- var converter = new StringRepeatConverter();
- var list = new List();
- for (var i = 1; i <= 9; i++)
- {
- list.Add($"{converter.Convert(Lang.Text, null, i, CultureInfo.CurrentCulture)}{i}");
- }
-
- return list;
- }
-
- internal List GetContributorDataList()
- {
- var client = new WebClient();
- client.Headers.Add("User-Agent", "request");
- var list = new List();
- try
- {
- var json = client.DownloadString(new Uri("https://api.github.com/repos/nabian/handycontrol/contributors"));
- var objList = JsonConvert.DeserializeObject>(json);
- list.AddRange(objList.Select(item => new AvatarModel
- {
- DisplayName = item.login,
- AvatarUri = item.avatar_url,
- Link = item.html_url
- }));
- }
- catch (Exception e)
- {
- HandyControl.Controls.MessageBox.Error(e.Message, Lang.Error);
- }
-
- return list;
- }
-
- internal List GetBlogDataList()
- {
- return new List
- {
- new AvatarModel
- {
- DisplayName = "林德熙",
- AvatarUri = "https://avatars3.githubusercontent.com/u/16054566?s=400&v=4",
- Link = "https://blog.lindexi.com/"
- },
- new AvatarModel
- {
- DisplayName = "吕毅",
- AvatarUri = "https://avatars2.githubusercontent.com/u/9959623?s=400&v=4",
- Link = "https://blog.walterlv.com/"
- },
- new AvatarModel
- {
- DisplayName = "DinoChan",
- AvatarUri = "https://avatars1.githubusercontent.com/u/6076257?s=400&v=4",
- Link = "https://www.cnblogs.com/dino623/"
- },
- new AvatarModel
- {
- DisplayName = "noctwolf",
- AvatarUri = "https://avatars3.githubusercontent.com/u/21022467?s=400&v=4",
- Link = "https://www.cnblogs.com/noctwolf/"
- }
- };
- }
-
- internal List GetProjectDataList()
- {
- return new List
- {
- new AvatarModel
- {
- DisplayName = "phpEnv",
- AvatarUri = "https://cdn.phpenv.cn:444/logo.png",
- Link = "https://www.phpenv.cn/"
- },
- new AvatarModel
- {
- DisplayName = "AutumnBox",
- AvatarUri = "https://raw.githubusercontent.com/zsh2401/AutumnBox/master/src/AutumnBox.GUI/Resources/Images/icon.png",
- Link = "https://github.com/zsh2401/AutumnBox"
- },
- new AvatarModel
- {
- DisplayName = "quicker",
- AvatarUri = "https://files.getquicker.net/_sitefiles/quicker_round_128.png",
- Link = "https://getquicker.net"
- }
- };
- }
-
- internal List GetWebsiteDataList()
- {
- return new List
- {
- new AvatarModel
- {
- DisplayName = "Dotnet9",
- AvatarUri = "https://pic.cnblogs.com/avatar/1663243/20191124121029.png",
- Link = "https://dotnet9.com/"
- }
- };
- }
-
- internal ObservableCollection GetCardDataList()
- {
- return new ObservableCollection
- {
- new CardModel
- {
- Header = "Atomic",
- Content = "/HandyControlDemo;component/Resources/Img/Album/1.jpg",
- Footer = "Stive Morgan"
- },
- new CardModel
- {
- Header = "Zinderlong",
- Content = "/HandyControlDemo;component/Resources/Img/Album/2.jpg",
- Footer = "Zonderling"
- },
- new CardModel
- {
- Header = "Busy Doin' Nothin'",
- Content = "/HandyControlDemo;component/Resources/Img/Album/3.jpg",
- Footer = "Ace Wilder"
- },
- new CardModel
- {
- Header = "Wrong",
- Content = "/HandyControlDemo;component/Resources/Img/Album/4.jpg",
- Footer = "Blaxy Girls"
- },
- new CardModel
- {
- Header = "The Lights",
- Content = "/HandyControlDemo;component/Resources/Img/Album/5.jpg",
- Footer = "Panda Eyes"
- },
- new CardModel
- {
- Header = "EA7-50-Cent Disco",
- Content = "/HandyControlDemo;component/Resources/Img/Album/6.jpg",
- Footer = "еяхат музыка"
- },
- new CardModel
- {
- Header = "Monsters",
- Content = "/HandyControlDemo;component/Resources/Img/Album/7.jpg",
- Footer = "Different Heaven"
- },
- new CardModel
- {
- Header = "Gangsta Walk",
- Content = "/HandyControlDemo;component/Resources/Img/Album/8.jpg",
- Footer = "Illusionize"
- },
- new CardModel
- {
- Header = "Won't Back Down",
- Content = "/HandyControlDemo;component/Resources/Img/Album/9.jpg",
- Footer = "Boehm / Benjamin Francis Leftwich"
- },
- new CardModel
- {
- Header = "Katchi",
- Content = "/HandyControlDemo;component/Resources/Img/Album/10.jpg",
- Footer = "Ofenbach / Nick Waterhouse"
- }
- };
- }
-
- internal CardModel GetCardData()
- {
- return new CardModel
- {
- Content = $"/HandyControlDemo;component/Resources/Img/Album/{DateTime.Now.Second % 10 + 1}.jpg"
- };
- }
-
- internal List GetStepBarDemoDataList()
- {
- return new List
- {
- new StepBarDemoModel
- {
- Header = LangKeys.Step,
- Content = LangKeys.Register
- },
- new StepBarDemoModel
- {
- Header = LangKeys.Step,
- Content = LangKeys.BasicInfo
- },
- new StepBarDemoModel
- {
- Header = LangKeys.Step,
- Content = LangKeys.UploadFile
- },
- new StepBarDemoModel
- {
- Header = LangKeys.Step,
- Content = LangKeys.Complete
- }
- };
- }
-
- internal ObservableCollection GetCoverViewDemoDataList()
- {
- return new ObservableCollection
- {
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/1.jpg",
- BackgroundToken = ResourceToken.SuccessBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/2.jpg",
- BackgroundToken = ResourceToken.PrimaryBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/3.jpg",
- BackgroundToken = ResourceToken.WarningBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/4.jpg",
- BackgroundToken = ResourceToken.DangerBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/5.jpg",
- BackgroundToken = ResourceToken.SuccessBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/6.jpg",
- BackgroundToken = ResourceToken.PrimaryBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/7.jpg",
- BackgroundToken = ResourceToken.InfoBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/8.jpg",
- BackgroundToken = ResourceToken.WarningBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/9.jpg",
- BackgroundToken = ResourceToken.PrimaryBrush
- },
- new CoverViewDemoModel
- {
- ImgPath = "/HandyControlDemo;component/Resources/Img/Album/10.jpg",
- BackgroundToken = ResourceToken.DangerBrush
- }
- };
- }
-
- internal List GetDemoInfo()
- {
- var infoList = new List();
-
- var stream = Application.GetResourceStream(new Uri("Data/DemoInfo.json", UriKind.Relative))?.Stream;
- if (stream == null) return infoList;
-
- string jsonStr;
- using (var reader = new StreamReader(stream))
- {
- jsonStr = reader.ReadToEnd();
- }
-
- var jsonObj = JsonConvert.DeserializeObject(jsonStr);
- foreach (var item in jsonObj)
- {
- var titleKey = (string) item.title;
- var title = titleKey;
- List list = Convert2DemoItemList(item.demoItemList);
-
- var demoInfoModel = new DemoInfoModel
- {
- Key = titleKey,
- Title = title,
- DemoItemList = list,
- SelectedIndex = (int) item.selectedIndex,
- IsGroupEnabled = (bool) item.group
- };
-
- infoList.Add(demoInfoModel);
- }
-
- return infoList;
- }
-
- private List Convert2DemoItemList(dynamic list)
- {
- var resultList = new List();
-
- foreach (var item in list)
- {
- var name = (string) item[0];
- string targetCtlName = item[1];
- string imageName = item[2];
- var isNew = !string.IsNullOrEmpty((string) item[3]);
- var groupName = (string) item[4];
- if (string.IsNullOrEmpty(groupName))
- {
- groupName = "Misc";
- }
-
- resultList.Add(new DemoItemModel
- {
- Name = name,
- TargetCtlName = targetCtlName,
- ImageName = $"../../Resources/Img/LeftMainContent/{imageName}.png",
- IsNew = isNew,
- GroupName = groupName
+ Index = j,
+ IsSelected = j % 2 == 0,
+ Name = $"SubName{j}",
+ Type = (DemoType) j
});
}
-
- return resultList;
+ var model = new DemoDataModel
+ {
+ Index = i,
+ IsSelected = i % 2 == 0,
+ Name = $"Name{i}",
+ Type = (DemoType) (i % 6 + 1),
+ DataList = dataList,
+ ImgPath = $"/HandyControlDemo;component/Resources/Img/Avatar/avatar{i % 6 + 1}.png",
+ Remark = new string(i.ToString()[0], 10)
+ };
+ list.Add(model);
}
- public string GetDemoUrl(DemoInfoModel demoInfo, DemoItemModel demoItem)
+ return list;
+ }
+
+ internal List GetDemoDataList(int count)
+ {
+ var list = new List();
+ for (var i = 1; i <= count; i++)
{
- var key = demoInfo.Key switch
+ var index = i % 6 + 1;
+ var model = new DemoDataModel
{
- "Styles" => "native_controls",
- "Controls" => "extend_controls",
- "Tools" => "tools",
- _ => string.Empty
+ Index = i,
+ IsSelected = i % 2 == 0,
+ Name = $"Name{i}",
+ Type = (DemoType) index,
+ ImgPath = $"/HandyControlDemo;component/Resources/Img/Avatar/avatar{index}.png",
+ Remark = new string(i.ToString()[0], 10)
+ };
+ list.Add(model);
+ }
+
+ return list;
+ }
+
+ internal List GetContributorDataList()
+ {
+ var client = new WebClient();
+ client.Headers.Add("User-Agent", "request");
+ var list = new List();
+ try
+ {
+ var json = client.DownloadString(new Uri("https://api.github.com/repos/nabian/handycontrol/contributors"));
+ var objList = JsonConvert.DeserializeObject>(json);
+ list.AddRange(objList.Select(item => new AvatarModel
+ {
+ DisplayName = item.login,
+ AvatarUri = item.avatar_url,
+ Link = item.html_url
+ }));
+ }
+ catch (Exception e)
+ {
+ HandyControl.Controls.MessageBox.Error(e.Message, Lang.Error);
+ }
+
+ return list;
+ }
+
+ internal List GetBlogDataList()
+ {
+ return new()
+ {
+ new AvatarModel
+ {
+ DisplayName = "林德熙",
+ AvatarUri = "https://avatars3.githubusercontent.com/u/16054566?s=400&v=4",
+ Link = "https://blog.lindexi.com/"
+ },
+ new AvatarModel
+ {
+ DisplayName = "吕毅",
+ AvatarUri = "https://avatars2.githubusercontent.com/u/9959623?s=400&v=4",
+ Link = "https://blog.walterlv.com/"
+ },
+ new AvatarModel
+ {
+ DisplayName = "DinoChan",
+ AvatarUri = "https://avatars1.githubusercontent.com/u/6076257?s=400&v=4",
+ Link = "https://www.cnblogs.com/dino623/"
+ },
+ new AvatarModel
+ {
+ DisplayName = "noctwolf",
+ AvatarUri = "https://avatars3.githubusercontent.com/u/21022467?s=400&v=4",
+ Link = "https://www.cnblogs.com/noctwolf/"
+ },
+ new AvatarModel
+ {
+ DisplayName = "关关长语",
+ AvatarUri = "https://avatars3.githubusercontent.com/u/25916858?s=400&v=4",
+ Link = "https://blog.csdn.net/qq_28806349/category_11213909.html"
+ }
+ };
+ }
+
+ internal List GetProjectDataList()
+ {
+ return new()
+ {
+ new AvatarModel
+ {
+ DisplayName = "phpEnv",
+ AvatarUri = "https://cdn.phpenv.cn:444/logo.png",
+ Link = "https://www.phpenv.cn/"
+ },
+ new AvatarModel
+ {
+ DisplayName = "AutumnBox",
+ AvatarUri = "https://raw.githubusercontent.com/zsh2401/AutumnBox/master/src/AutumnBox.GUI/Resources/Images/icon.png",
+ Link = "https://github.com/zsh2401/AutumnBox"
+ },
+ new AvatarModel
+ {
+ DisplayName = "quicker",
+ AvatarUri = "https://files.getquicker.net/_sitefiles/quicker_round_128.png",
+ Link = "https://getquicker.net"
+ }
+ };
+ }
+
+ internal List GetWebsiteDataList()
+ {
+ return new()
+ {
+ new AvatarModel
+ {
+ DisplayName = "Dotnet9",
+ AvatarUri = "https://pic.cnblogs.com/avatar/1663243/20191124121029.png",
+ Link = "https://dotnet9.com/"
+ }
+ };
+ }
+
+ internal ObservableCollection GetCardDataList()
+ {
+ return new()
+ {
+ new CardModel
+ {
+ Header = "Atomic",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/1.jpg",
+ Footer = "Stive Morgan"
+ },
+ new CardModel
+ {
+ Header = "Zinderlong",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/2.jpg",
+ Footer = "Zonderling"
+ },
+ new CardModel
+ {
+ Header = "Busy Doin' Nothin'",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/3.jpg",
+ Footer = "Ace Wilder"
+ },
+ new CardModel
+ {
+ Header = "Wrong",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/4.jpg",
+ Footer = "Blaxy Girls"
+ },
+ new CardModel
+ {
+ Header = "The Lights",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/5.jpg",
+ Footer = "Panda Eyes"
+ },
+ new CardModel
+ {
+ Header = "EA7-50-Cent Disco",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/6.jpg",
+ Footer = "еяхат музыка"
+ },
+ new CardModel
+ {
+ Header = "Monsters",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/7.jpg",
+ Footer = "Different Heaven"
+ },
+ new CardModel
+ {
+ Header = "Gangsta Walk",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/8.jpg",
+ Footer = "Illusionize"
+ },
+ new CardModel
+ {
+ Header = "Won't Back Down",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/9.jpg",
+ Footer = "Boehm / Benjamin Francis Leftwich"
+ },
+ new CardModel
+ {
+ Header = "Katchi",
+ Content = "/HandyControlDemo;component/Resources/Img/Album/10.jpg",
+ Footer = "Ofenbach / Nick Waterhouse"
+ }
+ };
+ }
+
+ internal CardModel GetCardData()
+ {
+ return new()
+ {
+ Content = $"/HandyControlDemo;component/Resources/Img/Album/{DateTime.Now.Second % 10 + 1}.jpg"
+ };
+ }
+
+ internal List GetStepBarDemoDataList()
+ {
+ return new()
+ {
+ new StepBarDemoModel
+ {
+ Header = LangKeys.Step,
+ Content = LangKeys.Register
+ },
+ new StepBarDemoModel
+ {
+ Header = LangKeys.Step,
+ Content = LangKeys.BasicInfo
+ },
+ new StepBarDemoModel
+ {
+ Header = LangKeys.Step,
+ Content = LangKeys.UploadFile
+ },
+ new StepBarDemoModel
+ {
+ Header = LangKeys.Step,
+ Content = LangKeys.Complete
+ }
+ };
+ }
+
+ internal ObservableCollection GetCoverViewDemoDataList()
+ {
+ return new()
+ {
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/1.jpg",
+ BackgroundToken = ResourceToken.SuccessBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/2.jpg",
+ BackgroundToken = ResourceToken.PrimaryBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/3.jpg",
+ BackgroundToken = ResourceToken.WarningBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/4.jpg",
+ BackgroundToken = ResourceToken.DangerBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/5.jpg",
+ BackgroundToken = ResourceToken.SuccessBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/6.jpg",
+ BackgroundToken = ResourceToken.PrimaryBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/7.jpg",
+ BackgroundToken = ResourceToken.InfoBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/8.jpg",
+ BackgroundToken = ResourceToken.WarningBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/9.jpg",
+ BackgroundToken = ResourceToken.PrimaryBrush
+ },
+ new CoverViewDemoModel
+ {
+ ImgPath = "/HandyControlDemo;component/Resources/Img/Album/10.jpg",
+ BackgroundToken = ResourceToken.DangerBrush
+ }
+ };
+ }
+
+ internal List GetDemoInfo()
+ {
+ var infoList = new List();
+
+ var stream = Application.GetResourceStream(new Uri("Data/DemoInfo.json", UriKind.Relative))?.Stream;
+ if (stream == null) return infoList;
+
+ string jsonStr;
+ using (var reader = new StreamReader(stream))
+ {
+ jsonStr = reader.ReadToEnd();
+ }
+
+ var jsonObj = JsonConvert.DeserializeObject(jsonStr);
+ foreach (var item in jsonObj)
+ {
+ var titleKey = (string) item.title;
+ var title = titleKey;
+ List list = Convert2DemoItemList(item.demoItemList);
+
+ var demoInfoModel = new DemoInfoModel
+ {
+ Key = titleKey,
+ Title = title,
+ DemoItemList = list,
+ SelectedIndex = (int) item.selectedIndex,
+ IsGroupEnabled = (bool) item.group
};
- var domainName = LangProvider.Culture == null || LangProvider.Culture.Name.ToLower() == "zh-cn"
- ? "handyorg"
- : "ghost1372";
- return $"https://{domainName}.github.io/handycontrol/{key}/{demoItem.Name[0].ToString().ToLower()}{demoItem.Name.Substring(1)}";
+ infoList.Add(demoInfoModel);
}
+
+ return infoList;
+ }
+
+ private List Convert2DemoItemList(dynamic list)
+ {
+ var resultList = new List();
+
+ foreach (var item in list)
+ {
+ var name = (string) item[0];
+ string targetCtlName = item[1];
+ string imageBrushName = item[2];
+ var isNew = !string.IsNullOrEmpty((string) item[3]);
+ var groupName = (string) item[4];
+ if (string.IsNullOrEmpty(groupName))
+ {
+ groupName = "Misc";
+ }
+
+ resultList.Add(new DemoItemModel
+ {
+ Name = name,
+ TargetCtlName = targetCtlName,
+ ImageBrush = ResourceHelper.GetResource
-
+
-
+
@@ -87,7 +87,7 @@
-
+
@@ -101,7 +101,7 @@
-
+
@@ -117,7 +117,7 @@
-
+
@@ -133,10 +133,10 @@
-
+
-
+
@@ -206,7 +206,7 @@
-
+
@@ -214,7 +214,52 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -239,24 +284,29 @@
-
+
-
+
-
+
@@ -264,7 +314,51 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -289,19 +383,24 @@
-
+
-
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/SearchBarBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/SearchBarBaseStyle.xaml
index 3e78af5b..e3a5fcf5 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/SearchBarBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/SearchBarBaseStyle.xaml
@@ -2,30 +2,26 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:hc="clr-namespace:HandyControl.Controls"
xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
- xmlns:system="clr-namespace:System;assembly=mscorlib"
- xmlns:themes="clr-namespace:HandyControl.Themes">
-
-
-
-
+ xmlns:system="clr-namespace:System;assembly=mscorlib">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -257,4 +217,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ShieldBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ShieldBaseStyle.xaml
index 6b2e7f73..20a09e43 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ShieldBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ShieldBaseStyle.xaml
@@ -1,12 +1,6 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
+
+
+
@@ -72,10 +66,10 @@
-
+
-
+
@@ -103,10 +97,10 @@
-
+
-
+
@@ -134,10 +128,10 @@
-
+
-
+
@@ -165,10 +159,10 @@
-
+
-
+
@@ -337,7 +331,7 @@
-
+
@@ -418,27 +412,19 @@
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
+
@@ -522,27 +508,19 @@
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
+
@@ -630,7 +608,7 @@
-
+
@@ -647,7 +625,7 @@
-
+
@@ -709,10 +687,10 @@
-
+
-
+
@@ -740,10 +718,10 @@
-
+
-
+
@@ -771,10 +749,10 @@
-
+
-
+
@@ -802,10 +780,10 @@
-
+
-
+
@@ -964,6 +942,6 @@
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/SplitButtonBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/SplitButtonBaseStyle.xaml
index 989d82a3..bbd6c3d5 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/SplitButtonBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/SplitButtonBaseStyle.xaml
@@ -1,12 +1,6 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/StatusBarBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/StatusBarBaseStyle.xaml
index b284e14f..1b945779 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/StatusBarBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/StatusBarBaseStyle.xaml
@@ -1,11 +1,5 @@
-
-
-
-
-
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
@@ -25,4 +19,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/StepBarBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/StepBarBaseStyle.xaml
index df76e6a1..5003320b 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/StepBarBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/StepBarBaseStyle.xaml
@@ -1,12 +1,6 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
-
-
-
-
@@ -94,7 +82,7 @@
-
+
@@ -111,25 +99,25 @@
-
+
-
-
-
+
+
+
-
+
-
-
-
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TabControlBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TabControlBaseStyle.xaml
index 55264bfb..e1b995d9 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TabControlBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TabControlBaseStyle.xaml
@@ -1,72 +1,64 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TagBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TagBaseStyle.xaml
index c87462f9..48414bec 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TagBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TagBaseStyle.xaml
@@ -1,17 +1,7 @@
-
-
-
-
-
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBlockBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBlockBaseStyle.xaml
index 5880c637..d6e9f655 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBlockBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBlockBaseStyle.xaml
@@ -1,10 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBoxBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBoxBaseStyle.xaml
index 82c868d2..2ece897c 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBoxBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TextBoxBaseStyle.xaml
@@ -2,15 +2,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:hc="clr-namespace:HandyControl.Controls"
xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
- xmlns:system="clr-namespace:System;assembly=mscorlib"
- xmlns:themes="clr-namespace:HandyControl.Themes">
-
-
-
-
-
-
-
+ xmlns:system="clr-namespace:System;assembly=mscorlib">
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -272,4 +219,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TimePickerBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TimePickerBaseStyle.xaml
index e3a821be..457d9590 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TimePickerBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TimePickerBaseStyle.xaml
@@ -2,61 +2,46 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:hc="clr-namespace:HandyControl.Controls"
xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
- xmlns:system="clr-namespace:System;assembly=mscorlib"
- xmlns:themes="clr-namespace:HandyControl.Themes">
+ xmlns:system="clr-namespace:System;assembly=mscorlib">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -338,4 +283,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleBlockBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleBlockBaseStyle.xaml
index 4b12c87f..2510351d 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleBlockBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleBlockBaseStyle.xaml
@@ -5,6 +5,7 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleButtonBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleButtonBaseStyle.xaml
index 811a3945..6f3105ac 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleButtonBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToggleButtonBaseStyle.xaml
@@ -1,16 +1,10 @@
-
-
-
-
-
-
+ xmlns:system="clr-namespace:System;assembly=mscorlib">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolBarBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolBarBaseStyle.xaml
index 21051f33..7944fb34 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolBarBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolBarBaseStyle.xaml
@@ -1,61 +1,48 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
-
+
-
+
-
+
@@ -65,11 +52,11 @@
-
+
-
+
@@ -82,11 +69,11 @@
-
+
-
+
@@ -94,138 +81,97 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
-
+
-
+
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolTipBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolTipBaseStyle.xaml
index 1f391941..09242d57 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolTipBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ToolTipBaseStyle.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TreeViewBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TreeViewBaseStyle.xaml
index 393bc5aa..2786dd59 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/TreeViewBaseStyle.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/TreeViewBaseStyle.xaml
@@ -1,14 +1,6 @@
-
-
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml
index 406e2027..512386e0 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Border.xaml
@@ -1,13 +1,7 @@
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Button.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Button.xaml
index 91314274..e6e1f70f 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Button.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Button.xaml
@@ -1,18 +1,11 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
+
+
+
+
+
+
+
+
@@ -52,6 +86,7 @@
+
+
+
+
@@ -111,31 +159,67 @@
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Calendar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Calendar.xaml
index 16e6dcc8..a77013f7 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Calendar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Calendar.xaml
@@ -1,14 +1,7 @@
-
-
-
-
-
-
+ xmlns:tools="clr-namespace:HandyControl.Tools">
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Card.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Card.xaml
index d6d2c6c6..a48bad41 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Card.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Card.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Carousel.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Carousel.xaml
index d707f9aa..a8d595f4 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Carousel.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Carousel.xaml
@@ -1,13 +1,7 @@
-
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
-
-
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ChatBubble.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ChatBubble.xaml
index 4e9da8be..bfb6a2e0 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ChatBubble.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ChatBubble.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/CheckBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/CheckBox.xaml
index 0603be89..336ffa16 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/CheckBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/CheckBox.xaml
@@ -1,10 +1,5 @@
-
-
-
-
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/CheckComboBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/CheckComboBox.xaml
index 0278e91e..f760e2cc 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/CheckComboBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/CheckComboBox.xaml
@@ -1,16 +1,50 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Clock.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Clock.xaml
index 7caab39d..28d70e11 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Clock.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Clock.xaml
@@ -2,14 +2,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:langs="clr-namespace:HandyControl.Properties.Langs"
xmlns:hc="clr-namespace:HandyControl.Controls"
- xmlns:ex="clr-namespace:HandyControl.Tools.Extension"
- xmlns:themes="clr-namespace:HandyControl.Themes">
-
-
-
-
-
-
+ xmlns:ex="clr-namespace:HandyControl.Tools.Extension">
-
-
+
+
-
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml
index 58ea57bb..7b9bd239 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ColorPicker.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ComboBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ComboBox.xaml
index fee08ee0..72ab23c0 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ComboBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ComboBox.xaml
@@ -1,16 +1,42 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ContextMenu.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ContextMenu.xaml
index 8a2aba15..90ce7303 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ContextMenu.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ContextMenu.xaml
@@ -1,10 +1,12 @@
-
-
-
-
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/CoverFlow.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/CoverFlow.xaml
index d3a4fcca..1db125dd 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/CoverFlow.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/CoverFlow.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/CoverView.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/CoverView.xaml
index 58dea4be..913b8d13 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/CoverView.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/CoverView.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/DataGrid.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/DataGrid.xaml
index 022bacd2..7fc1fda1 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/DataGrid.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/DataGrid.xaml
@@ -1,249 +1,11 @@
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/DatePicker.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/DatePicker.xaml
index 29aaf581..9dba4db1 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/DatePicker.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/DatePicker.xaml
@@ -1,16 +1,34 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/DateTimePicker.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/DateTimePicker.xaml
index c5139b29..00e35314 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/DateTimePicker.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/DateTimePicker.xaml
@@ -1,16 +1,34 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Dialog.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Dialog.xaml
index dede2296..a4e9bc8c 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Dialog.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Dialog.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Divider.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Divider.xaml
index 4da9eb7b..bf41e399 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Divider.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Divider.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Drawer.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Drawer.xaml
index e69294c2..597702e6 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Drawer.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Drawer.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ElementGroup.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ElementGroup.xaml
new file mode 100644
index 00000000..feb31095
--- /dev/null
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ElementGroup.xaml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Empty.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Empty.xaml
index 419906fb..91e72127 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Empty.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Empty.xaml
@@ -1,10 +1,5 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Expander.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Expander.xaml
index 633ba8a2..c6de6580 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Expander.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Expander.xaml
@@ -1,10 +1,11 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
-
-
+
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/FlowDocument.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/FlowDocument.xaml
index 0da5243c..790b37c3 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/FlowDocument.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/FlowDocument.xaml
@@ -1,9 +1,4 @@
-
-
-
-
-
+
@@ -11,4 +6,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml
index 941a2705..8a59695f 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml
@@ -1,10 +1,5 @@
-
-
-
-
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/GotoTop.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/GotoTop.xaml
index 4b56bb08..4a35084d 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/GotoTop.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/GotoTop.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Gravatar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Gravatar.xaml
index d811043e..e8a5c868 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Gravatar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Gravatar.xaml
@@ -1,12 +1,6 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
@@ -27,4 +21,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/GroupBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/GroupBox.xaml
index 4c3b1e8c..c50ff456 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/GroupBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/GroupBox.xaml
@@ -1,15 +1,19 @@
-
+
-
-
-
+
-
+
-
+
-
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Growl.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Growl.xaml
index 6c455970..4e4e4d90 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Growl.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Growl.xaml
@@ -1,15 +1,6 @@
-
-
-
-
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ImageSelector.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ImageSelector.xaml
index 1f73e7bf..20d2e638 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ImageSelector.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ImageSelector.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ImageViewer.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ImageViewer.xaml
index 5640ffc7..9e3199f8 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ImageViewer.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ImageViewer.xaml
@@ -1,23 +1,11 @@
-
-
-
-
-
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Label.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Label.xaml
index d983c750..bea5d3d1 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Label.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Label.xaml
@@ -1,34 +1,61 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
\ No newline at end of file
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ListBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ListBox.xaml
index 81e75b10..d8940a9a 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ListBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ListBox.xaml
@@ -1,14 +1,18 @@
-
-
-
-
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ListView.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ListView.xaml
index 2963986d..dab0c9fb 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ListView.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ListView.xaml
@@ -1,165 +1,84 @@
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Loading.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Loading.xaml
index 32454016..c8aa6d12 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Loading.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Loading.xaml
@@ -1,12 +1,6 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
@@ -43,4 +37,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Magnifier.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Magnifier.xaml
index c6b92e98..689e16c8 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Magnifier.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Magnifier.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Menu.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Menu.xaml
index 52a0c67d..4466a2cf 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Menu.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Menu.xaml
@@ -1,12 +1,14 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
-
-
+
-
+
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/MessageBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/MessageBox.xaml
index c158b377..5479ac26 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/MessageBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/MessageBox.xaml
@@ -1,12 +1,7 @@
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Pagination.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Pagination.xaml
index a7127002..4ccd6ee0 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Pagination.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Pagination.xaml
@@ -4,13 +4,7 @@
xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
xmlns:system="clr-namespace:System;assembly=mscorlib"
xmlns:lang="clr-namespace:HandyControl.Properties.Langs"
- xmlns:ex="clr-namespace:HandyControl.Tools.Extension"
- xmlns:themes="clr-namespace:HandyControl.Themes">
-
-
-
-
-
+ xmlns:ex="clr-namespace:HandyControl.Tools.Extension">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/PasswordBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/PasswordBox.xaml
index e1d071d6..7f28b64b 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/PasswordBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/PasswordBox.xaml
@@ -1,16 +1,34 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/PinBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/PinBox.xaml
index 1d4d6a6a..b344ec52 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/PinBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/PinBox.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Poptip.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Poptip.xaml
index 3098915f..9929b9d7 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Poptip.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Poptip.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/PopupWindow.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/PopupWindow.xaml
index a9e85715..b032b606 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/PopupWindow.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/PopupWindow.xaml
@@ -3,14 +3,7 @@
xmlns:hc="clr-namespace:HandyControl.Controls"
xmlns:interactivity="clr-namespace:HandyControl.Interactivity"
xmlns:langs="clr-namespace:HandyControl.Properties.Langs"
- xmlns:ex="clr-namespace:HandyControl.Tools.Extension"
- xmlns:themes="clr-namespace:HandyControl.Themes">
-
-
-
-
-
-
+ xmlns:ex="clr-namespace:HandyControl.Tools.Extension">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ProgressBar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ProgressBar.xaml
index 35a06348..2c247cfe 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ProgressBar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ProgressBar.xaml
@@ -1,12 +1,7 @@
-
-
-
-
+ xmlns:system="clr-namespace:System;assembly=mscorlib">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ProgressButton.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ProgressButton.xaml
index bd9e4720..8b56678b 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ProgressButton.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ProgressButton.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/PropertyGrid.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/PropertyGrid.xaml
index a5cc94c4..91dcc0b3 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/PropertyGrid.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/PropertyGrid.xaml
@@ -1,14 +1,8 @@
-
-
-
-
-
@@ -73,10 +67,6 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/RepeatButton.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/RepeatButton.xaml
index 48435c16..b5f43ee5 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/RepeatButton.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/RepeatButton.xaml
@@ -1,18 +1,11 @@
-
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
-
+
-
+
+
+
-
+
+
+
-
+
+
+
-
+
+
+
+
+
@@ -52,6 +86,7 @@
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/RichTextBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/RichTextBox.xaml
index 991ea313..a88a78b6 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/RichTextBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/RichTextBox.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/SearchBar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/SearchBar.xaml
index 4a2041c9..1e7df846 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/SearchBar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/SearchBar.xaml
@@ -1,16 +1,34 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Separator.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Separator.xaml
index a0dc7fc9..4a092f8a 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Separator.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Separator.xaml
@@ -1,10 +1,5 @@
-
-
-
-
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Shield.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Shield.xaml
index e7ca50d3..57142336 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Shield.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Shield.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/SideMenu.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/SideMenu.xaml
index 8d92ff9a..4431bb9c 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/SideMenu.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/SideMenu.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Slider.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Slider.xaml
index 82f63d8c..68349ef1 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Slider.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Slider.xaml
@@ -1,10 +1,5 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
@@ -14,4 +9,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/SplitButton.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/SplitButton.xaml
index a3090373..abdc7947 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/SplitButton.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/SplitButton.xaml
@@ -1,13 +1,8 @@
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/StatusBar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/StatusBar.xaml
index 5479757f..4c9885da 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/StatusBar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/StatusBar.xaml
@@ -1,10 +1,5 @@
-
-
-
-
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/StepBar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/StepBar.xaml
index 2d8c29ea..7a85a7a4 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/StepBar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/StepBar.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/TabControl.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/TabControl.xaml
index 932f66f3..d29a6a75 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/TabControl.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/TabControl.xaml
@@ -1,77 +1,34 @@
-
+
-
-
-
-
-
-
-
-
+
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
-
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Tag.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Tag.xaml
index 75595a29..b75c4ca3 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Tag.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Tag.xaml
@@ -1,13 +1,8 @@
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
-
-
-
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/TextBlock.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/TextBlock.xaml
index a0975f90..6dd2e4ed 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/TextBlock.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/TextBlock.xaml
@@ -1,10 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
@@ -54,4 +50,6 @@
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/TextBox.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/TextBox.xaml
index bf5eefb1..25a268ab 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/TextBox.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/TextBox.xaml
@@ -1,18 +1,36 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/TimeBar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/TimeBar.xaml
index c067a804..50272eb7 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/TimeBar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/TimeBar.xaml
@@ -1,12 +1,6 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/TimePicker.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/TimePicker.xaml
index f4349bf7..c45cbb43 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/TimePicker.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/TimePicker.xaml
@@ -1,16 +1,34 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
-
\ No newline at end of file
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ToggleBlock.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ToggleBlock.xaml
index a531c27c..f055543a 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ToggleBlock.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ToggleBlock.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
@@ -26,4 +21,4 @@
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ToggleButton.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ToggleButton.xaml
index a0aff0af..caae4534 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ToggleButton.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ToggleButton.xaml
@@ -1,18 +1,11 @@
-
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ToolBar.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ToolBar.xaml
index e1f4c4a9..9860fa45 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ToolBar.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ToolBar.xaml
@@ -1,12 +1,7 @@
-
-
-
-
-
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/ToolTip.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/ToolTip.xaml
index 037c6069..1b43a119 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/ToolTip.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/ToolTip.xaml
@@ -1,9 +1,4 @@
-
-
-
-
-
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Transfer.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Transfer.xaml
index b57cc124..a48a3d7c 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Transfer.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Transfer.xaml
@@ -1,11 +1,56 @@
-
-
-
-
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:hc="clr-namespace:HandyControl.Controls">
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/TreeView.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/TreeView.xaml
index 4b5067e0..431ce041 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/TreeView.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/TreeView.xaml
@@ -1,12 +1,17 @@
-
-
-
-
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
\ No newline at end of file
+
+
+
+
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Watermark.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Watermark.xaml
index 19bf441a..5b4edaab 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Watermark.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Watermark.xaml
@@ -1,11 +1,6 @@
-
-
-
-
+ xmlns:hc="clr-namespace:HandyControl.Controls">
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Window.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Window.xaml
index 5a38aa8c..ef4082c9 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Window.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Window.xaml
@@ -1,14 +1,7 @@
-
-
-
-
-
-
-
+ xmlns:interactivity="clr-namespace:HandyControl.Interactivity">
@@ -53,6 +46,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Shared/HandyControl_Shared/Themes/Theme.cs b/src/Shared/HandyControl_Shared/Themes/Theme.cs
index 29d9726b..07ab534a 100644
--- a/src/Shared/HandyControl_Shared/Themes/Theme.cs
+++ b/src/Shared/HandyControl_Shared/Themes/Theme.cs
@@ -1,68 +1,246 @@
using System;
+using System.Collections.Generic;
+using System.Linq;
using System.Windows;
+using System.Windows.Media;
using HandyControl.Data;
using HandyControl.Tools;
+using HandyControl.Tools.Helper;
+using HandyControl.Tools.Interop;
+using Microsoft.Win32;
-namespace HandyControl.Themes
+namespace HandyControl.Themes;
+
+public class Theme : ResourceDictionary
{
- public class Theme : ResourceDictionary
+ public Theme()
{
- public Theme()
+ if (DesignerHelper.IsInDesignMode)
{
- if (DesignerHelper.IsInDesignMode)
+ MergedDictionaries.Add(ResourceHelper.GetSkin(SkinType.Default));
+ MergedDictionaries.Add(ResourceHelper.GetTheme());
+ }
+ else
+ {
+ InitResource();
+ }
+ }
+
+ #region Skin
+
+ private SkinType _manualSkinType;
+
+ private SkinType _skin;
+
+ public virtual SkinType Skin
+ {
+ get => _skin;
+ set
+ {
+ if (_skin == value) return;
+ _skin = value;
+
+ UpdateSkin();
+ }
+ }
+
+ public static readonly DependencyProperty SkinProperty = DependencyProperty.RegisterAttached(
+ "Skin", typeof(SkinType), typeof(Theme), new PropertyMetadata(default(SkinType), OnSkinChanged));
+
+ private static void OnSkinChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
+ {
+ if (d is not FrameworkElement element)
+ {
+ return;
+ }
+
+ var skin = (SkinType) e.NewValue;
+
+ var themes = new List();
+ GetAllThemes(element.Resources, ref themes);
+
+ if (themes.Count > 0)
+ {
+ foreach (var theme in themes)
{
- MergedDictionaries.Add(new ResourceDictionary
- {
- Source = new Uri("pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml")
- });
- MergedDictionaries.Add(new ResourceDictionary
- {
- Source = new Uri("pack://application:,,,/HandyControl;component/Themes/Theme.xaml")
- });
+ theme.Skin = skin;
+ }
+ }
+ else
+ {
+ element.Resources.MergedDictionaries.Add(new Theme
+ {
+ Skin = skin
+ });
+ }
+ }
+
+ private static void GetAllThemes(ResourceDictionary resourceDictionary, ref List themes)
+ {
+ if (resourceDictionary is Theme theme)
+ {
+ themes.Add(theme);
+ }
+
+ // we must consider it's MergedDictionaries
+ foreach (var dictionaryMergedDictionary in resourceDictionary.MergedDictionaries)
+ {
+ GetAllThemes(dictionaryMergedDictionary, ref themes);
+ }
+ }
+
+ public static void SetSkin(DependencyObject element, SkinType value)
+ => element.SetValue(SkinProperty, value);
+
+ public static SkinType GetSkin(DependencyObject element)
+ => (SkinType) element.GetValue(SkinProperty);
+
+ #endregion
+
+ #region SyncWithSystem
+
+ private bool _syncWithSystem;
+
+ public bool SyncWithSystem
+ {
+ get => _syncWithSystem;
+ set
+ {
+ _syncWithSystem = value;
+
+ if (value)
+ {
+ _manualSkinType = _skin;
+ SyncWithSystemTheme();
+
+ SystemEvents.UserPreferenceChanged += SystemEvents_UserPreferenceChanged;
}
else
{
- UpdateResource();
+ SystemEvents.UserPreferenceChanged -= SystemEvents_UserPreferenceChanged;
+
+ _skin = _manualSkinType;
+ UpdateSkin();
}
}
-
- private Uri _source;
-
- public new Uri Source
- {
- get => DesignerHelper.IsInDesignMode ? null : _source;
- set => _source = value;
- }
-
- private SkinType _skin;
-
- public virtual SkinType Skin
- {
- get => _skin;
- set
- {
- if (_skin == value) return;
- _skin = value;
-
- UpdateResource();
- }
- }
-
- public string Name { get; set; }
-
- public virtual ResourceDictionary GetSkin(SkinType skinType) => ResourceHelper.GetSkin(skinType);
-
- public virtual ResourceDictionary GetTheme() => new ResourceDictionary
- {
- Source = new Uri("pack://application:,,,/HandyControl;component/Themes/Theme.xaml")
- };
-
- private void UpdateResource()
- {
- if (DesignerHelper.IsInDesignMode) return;
- MergedDictionaries.Clear();
- MergedDictionaries.Add(GetSkin(Skin));
- MergedDictionaries.Add(GetTheme());
- }
}
+
+ private void SystemEvents_UserPreferenceChanged(object sender, UserPreferenceChangedEventArgs e)
+ {
+ if (e.Category == UserPreferenceCategory.General)
+ {
+ SyncWithSystemTheme();
+ }
+ }
+
+ private void SyncWithSystemTheme()
+ {
+ _skin = SystemHelper.DetermineIfInLightThemeMode() ? SkinType.Default : SkinType.Dark;
+ UpdateSkin();
+ }
+
+ #endregion
+
+ #region AccentColor
+
+ private Color? _accentColor;
+
+ public Color? AccentColor
+ {
+ get => _accentColor;
+ set
+ {
+ _accentColor = value;
+
+ if (value == null)
+ {
+ _precSkin = null;
+ }
+
+ UpdateSkin();
+ }
+ }
+
+ #endregion
+
+ #region Source
+
+ private Uri _source;
+
+ public new Uri Source
+ {
+ get => DesignerHelper.IsInDesignMode ? null : _source;
+ set => _source = value;
+ }
+
+ #endregion
+
+ public string Name { get; set; }
+
+ private SkinType _prevSkinType;
+
+ private ResourceDictionary _precSkin;
+
+ public virtual ResourceDictionary GetSkin(SkinType skinType)
+ {
+ if (_precSkin == null || _prevSkinType != skinType)
+ {
+ _precSkin = ResourceHelper.GetSkin(skinType);
+ _prevSkinType = skinType;
+ }
+
+ if (!SyncWithSystem)
+ {
+ if (AccentColor != null)
+ {
+ UpdateAccentColor(AccentColor.Value);
+ }
+ }
+ else
+ {
+ InteropMethods.DwmGetColorizationColor(out var color, out _);
+ UpdateAccentColor(ColorHelper.ToColor(color));
+ }
+
+ return _precSkin;
+ }
+
+ public static Theme GetTheme(string name, ResourceDictionary resourceDictionary)
+ {
+ if (string.IsNullOrEmpty(name) || resourceDictionary == null)
+ {
+ return null;
+ }
+
+ return resourceDictionary.MergedDictionaries.OfType().FirstOrDefault(item => Equals(item.Name, name));
+ }
+
+ public virtual ResourceDictionary GetTheme() => ResourceHelper.GetTheme();
+
+ private void InitResource()
+ {
+ if (DesignerHelper.IsInDesignMode)
+ {
+ return;
+ }
+
+ MergedDictionaries.Clear();
+ MergedDictionaries.Add(GetSkin(Skin));
+ MergedDictionaries.Add(GetTheme());
+ }
+
+ private void UpdateAccentColor(Color color)
+ {
+ _precSkin[ResourceToken.PrimaryColor] = color;
+ _precSkin[ResourceToken.DarkPrimaryColor] = color;
+ _precSkin[ResourceToken.TitleColor] = color;
+ _precSkin[ResourceToken.SecondaryTitleColor] = color;
+ }
+
+ private void UpdateSkin() => MergedDictionaries[0] = GetSkin(Skin);
+}
+
+public class StandaloneTheme : Theme
+{
+ public override ResourceDictionary GetTheme() => ResourceHelper.GetStandaloneTheme();
}
diff --git a/src/Shared/HandyControl_Shared/Themes/Theme.xaml b/src/Shared/HandyControl_Shared/Themes/Theme.xaml
index 7eec991f..69d4ddfc 100644
--- a/src/Shared/HandyControl_Shared/Themes/Theme.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Theme.xaml
@@ -1,8 +1,15 @@
-
+
+
+
@@ -10,6 +17,7 @@
+
@@ -25,7 +33,8 @@
- #AA000000
+
+ #88000000
24
20
16
@@ -88,10 +97,12 @@
- 30
- 10,6
- 8,6
+ 28
+ 20
+ 10,5
+ 8,0
4
+ 30
@@ -402,7 +413,7 @@
-
+
@@ -453,6 +464,7 @@
+
@@ -691,28 +752,15 @@
-
-
-
-
-
-
+
+
+
+
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -1159,6 +1208,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
@@ -1422,27 +1510,19 @@
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
+
@@ -1524,27 +1604,19 @@
-
+
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
+
@@ -1593,7 +1665,7 @@
-
+
@@ -1609,7 +1681,7 @@
-
+
@@ -1664,6 +1736,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -2125,7 +2182,50 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2150,22 +2250,27 @@
-
+
-
+
-
+
@@ -2173,7 +2278,50 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2198,20 +2346,26 @@
-
+
-
+
@@ -2324,7 +2482,6 @@
+
-
+
@@ -2710,35 +2925,36 @@
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
+
@@ -2771,6 +2987,7 @@
+
@@ -2780,20 +2997,56 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
+
@@ -4551,7 +5195,7 @@
-
+
@@ -4571,46 +5215,58 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -4621,7 +5277,7 @@
-
+
@@ -4633,52 +5289,66 @@
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -4689,7 +5359,7 @@
-
+
@@ -4701,8 +5371,7 @@
-
-
+
@@ -4718,47 +5387,55 @@
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
+
@@ -4767,12 +5444,9 @@
-
-
-
-
+
@@ -4786,49 +5460,60 @@
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -4837,12 +5522,9 @@
-
-
-
-
+
@@ -4851,52 +5533,65 @@
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -4907,14 +5602,7 @@
-
-
-
-
-
-
-
-
+
@@ -4923,8 +5611,7 @@
-
-
+
@@ -4939,7 +5626,7 @@
-
+
@@ -4962,23 +5649,14 @@
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -5080,7 +5762,7 @@
-
+
@@ -5094,15 +5776,15 @@
-
-
+
+
-
+
@@ -5112,72 +5794,69 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -5188,7 +5867,7 @@
-
+
@@ -5202,15 +5881,15 @@
-
-
+
+
-
+
@@ -5220,75 +5899,68 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -5299,14 +5971,7 @@
-
-
-
-
-
-
-
-
+
@@ -5314,112 +5979,93 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5427,16 +6073,16 @@
-
-
-
-
+
+
+
+
-
+
-
+
@@ -5447,14 +6093,7 @@
-
-
-
-
-
-
-
-
+
@@ -5462,107 +6101,89 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -5573,14 +6194,7 @@
-
-
-
-
-
-
-
-
+
@@ -5588,109 +6202,93 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5698,16 +6296,16 @@
-
-
-
-
+
+
+
+
-
+
-
+
@@ -5718,14 +6316,7 @@
-
-
-
-
-
-
-
-
+
@@ -5733,53 +6324,29 @@
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -5826,17 +6393,19 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -6284,19 +6808,20 @@
-
+
+
-
+
-
+
-
+
-
+
@@ -6315,25 +6840,25 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
@@ -6349,25 +6874,25 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
@@ -6391,124 +6916,88 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
+
@@ -6524,17 +7013,89 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -6788,8 +7349,7 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
@@ -6982,7 +7545,7 @@
-
+
@@ -6994,55 +7557,63 @@
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
@@ -7053,7 +7624,7 @@
-
+
@@ -7065,8 +7636,7 @@
-
-
+
@@ -7083,62 +7653,60 @@
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
@@ -7149,7 +7717,7 @@
-
+
@@ -7163,15 +7731,15 @@
-
-
+
+
-
+
@@ -7181,75 +7749,66 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
@@ -7260,7 +7819,7 @@
-
+
@@ -7274,15 +7833,15 @@
-
-
+
+
-
+
@@ -7292,18 +7851,8 @@
-
-
-
-
-
-
-
-
-
-
-
+
@@ -7442,9 +7991,9 @@
-
+
-
+
@@ -7494,13 +8043,18 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -8225,10 +8682,11 @@
+
-
+
@@ -8249,7 +8707,7 @@
-
+
@@ -8311,16 +8769,20 @@
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -9268,28 +9749,20 @@
-
-
-
-
-
-
-
-
-
@@ -9428,16 +9893,15 @@
-
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -9452,33 +9916,16 @@
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
@@ -9486,16 +9933,15 @@
-
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -9510,37 +9956,20 @@
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
@@ -10282,7 +10703,7 @@
-
+
@@ -10309,7 +10730,7 @@
-
+
@@ -10318,7 +10739,7 @@
-
+
@@ -10327,7 +10748,7 @@
-
+
@@ -10336,7 +10757,7 @@
-
+
@@ -10346,35 +10767,32 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -10835,78 +11380,40 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
@@ -10920,27 +11427,25 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
@@ -10955,8 +11460,8 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -11843,7 +12686,7 @@
-
+
@@ -11866,13 +12709,13 @@
-
+