(C#)如何在windows窗体中创建暗模式主题(将窗体分离为选择主题菜单)



我想知道如何编写一个深色主题单选按钮,使我的整个C#窗口(包括菜单等(变成深色

我制作了一个单独的设置表单,我想为主题设置单选按钮,以改变整个程序中的主题,而不仅仅是设置菜单。我正在做一个文本编辑器。

  • 步骤1:决定如何存储配色方案,并在此基础上创建一个类
  • 步骤2:创建一个方法来更改容器中每个UI组件的颜色,如下所示:
public void ChangeTheme(ColorScheme scheme, Control.ControlCollection container)
{
foreach (Control component in container)
{
if (component is Panel)
{
ChangeTheme(scheme, component.Controls);
component.BackColor = scheme.PanelBG;
component.ForeColor = scheme.PanelFG;
}
else if (component is Button)
{
component.BackColor = scheme.ButtonBG;
component.ForeColor = scheme.ButtonFG;
}
else if (component is TextBox)
{
component.BackColor = scheme.TextBoxBG;
component.ForeColor = scheme.TextBoxFG;
}
...
}
}
  • 步骤3:每当您在其组件上打开新表单时(并且由于明显的原因,在方法完成之前,请确保表单不可见(或每当您更改主题时,都要调用该方法

最新更新