在我的表格中,我有一个组合框。它具有红色,黄色等颜色名称。
我想更改表单的背景色,以匹配单击按钮时从组合框选择的颜色。到目前为止,我有这个:
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;
}
}
当我单击按钮时,窗体的BackColor始终设置为Blue。我在这里做错了什么?
最佳答案
您可以使用Color.FromName
this.BackColor = Color.FromName(comboBox_color.SelectedItem.ToString());
如果name参数不是预定义颜色的有效名称,则FromName方法将创建一个Color结构,该结构的ARGB值为0(即,所有ARGB分量均为0)。