0

在我的错误列表中出现错误:“表单”不是“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 模式。

谢谢!

4

0 回答 0