在我的错误列表中出现错误:“表单”不是“Windows”的成员。当我添加目标框架名字对象 (TFM) 时会发生此错误。
之前(没有错误)
<TargetFramework>net5.0-windows</TargetFramework>
之后(发生错误)
<TargetFramework>net5.0-windows10.0.19041.0</TargetFramework>
这是按照此处的说明:https ://docs.microsoft.com/en-us/windows/apps/desktop/modernize/desktop-to-uwp-enhance
这样做的目的是获得对“Windows.Storage.ApplicationData”API 的访问权限。
我的项目是一个 Windows 窗体应用程序(Visual Basic | Windows | 桌面)
临时解决方法是注释掉“Windows.Forms.Application...”行。但这显然会影响 HighDPIMode。
Dim eventArgs = New ApplyHighDpiModeEventArgs(
If(
_highDpiMode Is Nothing,
HighDpiMode.SystemAware,
_highDpiMode.Value))
RaiseEvent ApplyHighDpiMode(Me, eventArgs)
**Windows.Forms.Application.SetHighDpiMode(eventArgs.HighDpiMode)**
Return MyBase.OnInitialize(commandLineArgs)
End Function
通过使用 Windows Forms App 并以 .NET 5 为目标创建一个新项目,可以轻松重现该错误。当项目打开时,单击解决方案中的应用程序,它应该会打开一个 Project Sdk 窗口。将 TFM 更改为<TargetFramework>net5.0-windows10.0.19041.0</TargetFramework>
并构建项目。
任何人都可以提供有关如何解决错误的帮助或指导吗?但仍然可以访问 WinRT API 和高 DPI 模式。
谢谢!