Jon*_*rew 2 .net c# application-settings visual-studio winforms
我们如何从一个表单 (settings.form) 更改所有其他表单的背景颜色?我想开发我的毕业项目。它是一个社交媒体桌面管理项目。我想用一个切换器将所有表单更改为暗模式。我怎样才能做到这一点?这是我的 settings.cs
public void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked)
{
panel1.BackColor= Color.FromArgb(34, 36, 49);
form1.BackColor = Color.FromArgb(34, 36, 49);
form2.BackColor = Color.FromArgb(34, 36, 49);
this.BackColor = Color.FromArgb(34, 36, 49);
this.label1.BackColor = Color.White;
this.label1.ForeColor = Color.FromArgb(34, 36, 49);
}
else
{
this.BackColor = Color.White;
this.label1.BackColor = Color.FromArgb(34, 36, 49);
this.label1.ForeColor = Color.White;
}
form1.Show();
form1.Refresh();
form2.Show();
form2.Refresh();
Run Code Online (Sandbox Code Playgroud)
当我切换时,所有背景颜色都在变化。但所有表格都同时打开。
您可以使用(ApplicationSettings)可从表单设计器的Properties面板访问的属性。展开ApplicationSettings,打开PropertyBinding对话框,将设置添加到BackColor属性(例如,CommonFormBackColor)并对所有表单使用相同的设置。
您可以直接在“应用程序设置”PropertyBinding对话框中创建设置:
这个新设置是在用户范围中创建的。
User Scope 中的所有设置都基于每个用户应用并且可以更改。
Application Scope 中的设置被视为只读。
新设置将出现在ApplicationSettings可扩展属性下:
将相同的设置分配给所有应在更改此设置时更改其背景颜色的表单。
您当然可以为任何其他控件的任何其他属性分配一个公共设置。
使用表单模板(或基本表单类)可以自动化整个过程。
在运行时更改设置值时,所有打开的表单 - 以及稍后打开的表单 - 将显示相同的BackColor.
您可以为所有表单的背景颜色设置一个新值,更改设置的值:(
所有打开的共享相同BackGround颜色设置的表单将立即更改颜色)
Properties.Settings.Default.CommonFormBackColor = Color.Orange;
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令保存当前设置选择(以保留在当前会话中分配的值,以便在应用程序重新启动时再次使用它):
Properties.Settings.Default.Save();
Run Code Online (Sandbox Code Playgroud)
您可以重置默认值(最初分配给设计器中的设置的值)调用:
Properties.Settings.Default.Reset();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1117 次 |
| 最近记录: |