diff --git a/Installers/VS2019/HandyControl_VS2019.sln b/Installers/VS2019/HandyControl_VS2019.sln
index 2c1629ff..78ca7aa9 100644
--- a/Installers/VS2019/HandyControl_VS2019.sln
+++ b/Installers/VS2019/HandyControl_VS2019.sln
@@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfApp", "WpfApp\WpfApp.csp
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/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019.csproj
index ba720bad..633bf020 100644
--- a/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019.csproj
+++ b/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019.csproj
@@ -16,7 +16,7 @@
HandyControl_VS2019
HandyControl_VS2019
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/HandyControl_VS2019Package.cs b/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019Package.cs
deleted file mode 100644
index 10e0ebb6..00000000
--- a/Installers/VS2019/HandyControl_VS2019/HandyControl_VS2019Package.cs
+++ /dev/null
@@ -1,53 +0,0 @@
-using System;
-using System.Runtime.InteropServices;
-using System.Threading;
-using Microsoft.VisualStudio.Shell;
-using Task = System.Threading.Tasks.Task;
-
-namespace HandyControl_VS2019
-{
- ///
- /// This is the class that implements the package exposed by this assembly.
- ///
- ///
- ///
- /// The minimum requirement for a class to be considered a valid package for Visual Studio
- /// is to implement the IVsPackage interface and register itself with the shell.
- /// This package uses the helper classes defined inside the Managed Package Framework (MPF)
- /// to do it: it derives from the Package class that provides the implementation of the
- /// IVsPackage interface and uses the registration attributes defined in the framework to
- /// register itself and its components with the shell. These attributes tell the pkgdef creation
- /// utility what data to put into .pkgdef file.
- ///
- ///
- /// To get loaded into VS, the package must be referred by <Asset Type="Microsoft.VisualStudio.VsPackage" ...> in .vsixmanifest file.
- ///
- ///
- [PackageRegistration(UseManagedResourcesOnly = true, AllowsBackgroundLoading = true)]
- [Guid(PackageGuidString)]
- public sealed class HandyControl_VS2019Package : AsyncPackage
- {
- ///
- /// HandyControl_VS2019Package GUID string.
- ///
- public const string PackageGuidString = "157ef242-83b5-47d0-8f2f-e21dc8308151";
-
- #region Package Members
-
- ///
- /// Initialization of the package; this method is called right after the package is sited, so this is the place
- /// where you can put all the initialization code that rely on services provided by VisualStudio.
- ///
- /// A cancellation token to monitor for initialization cancellation, which can occur when VS is shutting down.
- /// A provider for progress updates.
- /// A task representing the async work of package initialization, or an already completed task if there is none. Do not return null from this method.
- protected override async Task InitializeAsync(CancellationToken cancellationToken, IProgress 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/HandyControl_VS2019/License.txt b/Installers/VS2019/HandyControl_VS2019/License.txt
index 0c1c18de..ce89800c 100644
--- a/Installers/VS2019/HandyControl_VS2019/License.txt
+++ b/Installers/VS2019/HandyControl_VS2019/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/Installers/VS2019/HandyControl_VS2019/Properties/AssemblyInfo.cs
index 94d87828..c8e705aa 100644
--- a/Installers/VS2019/HandyControl_VS2019/Properties/AssemblyInfo.cs
+++ b/Installers/VS2019/HandyControl_VS2019/Properties/AssemblyInfo.cs
@@ -6,9 +6,9 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("HandyControl_VS2019")]
-[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2020")]
+[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.1.0")]
+[assembly: AssemblyFileVersion("3.1.0")]
diff --git a/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest b/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
index 74e40f35..37afe1af 100644
--- a/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
+++ b/Installers/VS2019/HandyControl_VS2019/source.extension.vsixmanifest
@@ -1,7 +1,7 @@
-
+
HandyControl for VS2019
This VSIX Project will help people initialize a HandyControl project.
https://handyorg.github.io/handycontrol
@@ -21,10 +21,9 @@
-
+
-
diff --git a/Installers/VS2019/WpfApp/AssemblyInfo.cs b/Installers/VS2019/WpfApp/AssemblyInfo.cs
index 9eac2dc2..a3e3ceb3 100644
--- a/Installers/VS2019/WpfApp/AssemblyInfo.cs
+++ b/Installers/VS2019/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/ProjectTemplate.csproj b/Installers/VS2019/WpfApp/ProjectTemplate.csproj
index d6cec36e..fda36524 100644
--- a/Installers/VS2019/WpfApp/ProjectTemplate.csproj
+++ b/Installers/VS2019/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/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
index e2fda6dc..615ae4ce 100644
--- a/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
+++ b/Installers/VS2019/WpfApp/Properties/AssemblyInfo.cs
@@ -6,9 +6,9 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("HandyControl_VS2019_WpfApp")]
-[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2020")]
+[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.1.0")]
+[assembly: AssemblyFileVersion("3.1.0")]
diff --git a/Installers/VS2019/WpfApp/WpfApp.csproj b/Installers/VS2019/WpfApp/WpfApp.csproj
index 5c42f1ff..03c2fe4e 100644
--- a/Installers/VS2019/WpfApp/WpfApp.csproj
+++ b/Installers/VS2019/WpfApp/WpfApp.csproj
@@ -66,7 +66,6 @@
-
diff --git a/Installers/VS2019/WpfApp/WpfApp.vstemplate b/Installers/VS2019/WpfApp/WpfApp.vstemplate
index 69f0d286..34f4c6fb 100644
--- a/Installers/VS2019/WpfApp/WpfApp.vstemplate
+++ b/Installers/VS2019/WpfApp/WpfApp.vstemplate
@@ -1,29 +1,29 @@
-
- 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
+
+ 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/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/AssemblyInfo.cs b/Installers/VS2019/WpfCoreApp/AssemblyInfo.cs
new file mode 100644
index 00000000..9ef4842b
--- /dev/null
+++ b/Installers/VS2019/WpfCoreApp/AssemblyInfo.cs
@@ -0,0 +1,3 @@
+using System.Windows;
+
+[assembly: ThemeInfo(ResourceDictionaryLocation.None, ResourceDictionaryLocation.SourceAssembly)]
diff --git a/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj b/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
index 9b17e7cd..0cf79316 100644
--- a/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
+++ b/Installers/VS2019/WpfCoreApp/ProjectTemplate.csproj
@@ -1,24 +1,17 @@
+
WinExe
- netcoreapp3.0
true
- $safeprojectname$
- $safeprojectname$
- 1.0.0.0
- Debug;Release
- Copyright © $username$ 2018-2020
- 1.0.0.0
- 1.0.0.0
+ Copyright © $username$ $year$
+ netcoreapp3.0
latest
-
-
- TRACE;Core
-
-
- TRACE;Core
+ true
+ true
+ enable
-
+
-
\ No newline at end of file
+
+
diff --git a/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs b/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
index 6ca08ca9..9f047401 100644
--- a/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
+++ b/Installers/VS2019/WpfCoreApp/Properties/AssemblyInfo.cs
@@ -6,9 +6,9 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("HandyControl_VS2019_WpfCoreApp")]
-[assembly: AssemblyCopyright("Copyright © HandyOrg 2018-2020")]
+[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.1.0")]
+[assembly: AssemblyFileVersion("3.1.0")]
diff --git a/Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj b/Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj
index 6a55e8df..baf227fc 100644
--- a/Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj
+++ b/Installers/VS2019/WpfCoreApp/WpfCoreApp.csproj
@@ -60,6 +60,7 @@
MainWindow.xaml
+
diff --git a/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate b/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate
index 532eaeaf..9d39835d 100644
--- a/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate
+++ b/Installers/VS2019/WpfCoreApp/WpfCoreApp.vstemplate
@@ -1,27 +1,28 @@
-
- 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
+
+ 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/README-cn.md b/README-cn.md
index 9d1eefc0..83f0ff80 100644
--- a/README-cn.md
+++ b/README-cn.md
@@ -167,7 +167,7 @@ Step 4: Enjoy coding
## VS插件
-| [VS2019](https://marketplace.visualstudio.com/items?itemName=HandyOrg.handycontrolforvs2019) |
+| [VS2019](https://marketplace.visualstudio.com/items?itemName=HandyOrg.HandyControl) |
| ------------- |
## Star趋势
diff --git a/README.md b/README.md
index f5fe3f38..61e3bf7b 100644
--- a/README.md
+++ b/README.md
@@ -167,7 +167,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