如何在 .NET Core 3.0 中为 WPF 应用程序引用 System.Windows.Forms?
How to reference System.Windows.Forms in .NET Core 3.0 for WPF apps?
我正在将我的 WPF 桌面应用程序从 .NET Framework 迁移到 Core 3.0。
我使用的是 System.Windows.Forms.FolderBrowserDialog() ,现在我陷入了如何将此引用添加到核心项目的问题中。没有可用的“System.Windows.Forms”NuGet 包,是吗?有没有其他方法可以在 Core 中显示 FolderBrowserDialog?
更新
我使用默认模板创建了 Core 项目,然后将 .cs 和 .xaml 文件复制并粘贴到其中。 .csproj 文件如下所示:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
对于其他移植问题,您可能需要使用 Windows Compatibility Pack 来帮助将应用程序移植到 .NET Core
可能还有一些与 WPF 和此问题相关的更多信息,因为它已经存在一段时间了。这可能会有所帮助 Select folder dialog WPF,并针对 .NET Core 进行了更新。
祝您升级顺利!
您需要向 csproj 添加一个额外的开关:
<UseWindowsForms>true</UseWindowsForms>
在UseWpf下方添加。然后尝试重建。之后,您应该可以使用 Forms 命名空间了。
这就是如何在 .NET 5.0 中为 WPF 应用程序和 WindowsForms 引用 System.Windows.Forms
<PropertyGroup>
<TargetFramework>net5.0-windows</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<UseWPF>true</UseWPF>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>
我正在将我的 WPF 桌面应用程序从 .NET Framework 迁移到 Core 3.0。 我使用的是 System.Windows.Forms.FolderBrowserDialog() ,现在我陷入了如何将此引用添加到核心项目的问题中。没有可用的“System.Windows.Forms”NuGet 包,是吗?有没有其他方法可以在 Core 中显示 FolderBrowserDialog?
更新
我使用默认模板创建了 Core 项目,然后将 .cs 和 .xaml 文件复制并粘贴到其中。 .csproj 文件如下所示:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
对于其他移植问题,您可能需要使用 Windows Compatibility Pack 来帮助将应用程序移植到 .NET Core
可能还有一些与 WPF 和此问题相关的更多信息,因为它已经存在一段时间了。这可能会有所帮助 Select folder dialog WPF,并针对 .NET Core 进行了更新。
祝您升级顺利!
您需要向 csproj 添加一个额外的开关:
<UseWindowsForms>true</UseWindowsForms>
在UseWpf下方添加。然后尝试重建。之后,您应该可以使用 Forms 命名空间了。
这就是如何在 .NET 5.0 中为 WPF 应用程序和 WindowsForms 引用 System.Windows.Forms
<PropertyGroup>
<TargetFramework>net5.0-windows</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<UseWPF>true</UseWPF>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>