C# WinForms不使用系统主题

C# WinForms不使用系统主题,c#,.net,windows,winforms,themes,C#,.net,Windows,Winforms,Themes,Windows窗体是否可以在Windows 10中采用系统主题(亮或暗)?当我将Windows设置为黑色主题时,我正在调试的WinForms应用程序仍然有一个白色标题栏和背景 我读过关于SystemColors类应该如何遵循系统主题的内容,但是当我将它们与不同的主题一起使用时,颜色保持不变。我能找到的任何答案都是Windows 10之前的版本,所以我希望仍然有一种方法或一些我错过的方法,使表单的标题栏变暗,并更改系统颜色。我相信您必须在开始时检查系统主题,然后通过代码为所有控件设置颜色。没有内置

Windows窗体是否可以在Windows 10中采用系统主题(亮或暗)?当我将Windows设置为黑色主题时,我正在调试的WinForms应用程序仍然有一个白色标题栏和背景


我读过关于SystemColors类应该如何遵循系统主题的内容,但是当我将它们与不同的主题一起使用时,颜色保持不变。我能找到的任何答案都是Windows 10之前的版本,所以我希望仍然有一种方法或一些我错过的方法,使表单的标题栏变暗,并更改系统颜色。

我相信您必须在开始时检查系统主题,然后通过代码为所有控件设置颜色。没有内置选项可以根据系统主题自动更改颜色。

我发现系统主题仅适用于UWP应用程序,Windows个性化设置中还有一个特定选项,用户可以将强调颜色应用于标题栏和窗口边框。所以我可能不会试图改变这一部分,只是通过检测主题来改变客户端区域。如果你是C#桌面应用的新手,我建议你使用WPF而不是WinForms。在WPF中,您可以轻松地创建任意数量的主题,并在它们之间切换。