根据从组合框中选择的颜色更改背景色
本文关键字:颜色 背景色 选择 组合 | 更新日期: 2023-09-27 17:56:08
在我的表格中,我有一个组合框。它的颜色名称如红色、黄色等。
我想更改窗体的背景颜色,以匹配单击按钮时从组合框中选择的颜色。到目前为止,我有这个:
private void button_Pass_Click(object sender, EventArgs e)
{
if (comboBox_color.SelectedText == "Red")
{
this.BackColor = System.Drawing.Color.Red;
}
else if (comboBox_color.SelectedText == "Yellow")
{
this.BackColor = System.Drawing.Color.Yellow;
}
else
{
this.BackColor = System.Drawing.Color.Blue;
}
}
当我单击该按钮时,窗体的背景色始终设置为蓝色。我在这里做错了什么?
您可以使用
Color.FromName
this.BackColor = Color.FromName(comboBox_color.SelectedItem.ToString());
如果 name 参数不是预定义颜色的有效名称,则 FromName 方法将创建一个 ARGB 值为 0 的 Color 结构(即,所有 ARGB 组件均为 0)。
问题在于您正在比较的组合框的属性。
属性用于获取或设置在组合框的可编辑部分中选定的文本。
属性用于获取或设置组合框中的选定项。如果要为该选定项目显示文本,可以这样做:
comboBox_color.SelectedItem.ToString();