编译器错误WFO5001

引入的版本:.NET 9

System.Windows.Forms.Application.SetColorMode(System.Windows.Forms.SystemColorMode) 仅用于评估目的,在将来的更新中可能会更改或删除。 取消此诊断以继续。

-或-

System.Windows.Forms.SystemColorMode 仅用于评估目的,在将来的更新中可能会更改或删除。 取消此诊断以继续。

颜色模式功能目前是实验性的,可能会更改。 生成此错误,以便你了解编写设置Windows 窗体项目颜色模式的代码的含义。 必须禁止显示此错误才能继续。 有关此 API 的详细信息,请参阅 深色模式

示例:

以下示例生成WFO5001:

namespace MyExampleProject;

static class Program
{
    [STAThread]
    static void Main()
    {
        ApplicationConfiguration.Initialize();
        Application.SetColorMode(SystemColorMode.Dark);
        Application.Run(new Form1());
    }
}

更正此错误

禁止显示错误,并使用以下任一方法启用对 API 的访问:

  • .editorConfig 文件中设置规则的严重性。

    [*.{cs,vb}]
    dotnet_diagnostic.WFO5001.severity = none
    

    有关编辑器配置文件的详细信息,请参阅 用于代码分析规则的配置文件。

  • 将以下 PropertyGroup 添加到项目文件:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFO5001</NoWarn>
    </PropertyGroup>
    
  • 使用 #pragma warning disable WFO5001 指令禁止在代码中显示:

    namespace MyExampleProject;
    
    static class Program
    {
        [STAThread]
        static void Main()
        {
            ApplicationConfiguration.Initialize();
    #pragma warning disable WFO5001
            Application.SetColorMode(SystemColorMode.Dark);
    #pragma warning restore WFO5001
            Application.Run(new Form1());
        }
    }