.NET 9 WinForms 深色模式

沒想到在 .NET 9 還可以看到 WinForms 迎來重磅更新,WinForms 支援深色模式了!

有三種模式,經典、深色、依據系統設定:
    
Application.SetColorMode(SystemColorMode.Classic);
Application.SetColorMode(SystemColorMode.Dark);
Application.SetColorMode(SystemColorMode.System);
    

要使用也很簡單,只要在 .NET 9 的 WinForms 專案的 Program.cs 檔案中加入以下三行即可:
    
using System.Diagnostics.CodeAnalysis;


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

不過目前還是實驗性功能,還有很多地方需要完善,直接來看對比圖:

經典(淺色)模式:



深色模式:

目前主要的問題有: Button 的字顯示有問題,LinkLabel 的顏色也沒有改變, DataGridView 標題行列選擇區域不會變色等,不過筆者還是非常期待這個功能,希望早日成為正式功能!

參考資料:
Microsoft.Learn - What's new in Windows Forms for .NET 9

留言