如何以编程方式设置Web窗体上文本框的背景色

本文关键字:文本 背景色 窗体 Web 编程 方式 设置 | 更新日期: 2023-09-27 18:06:27

我想在运行时以编程方式设置web表单的背景色(以便用户可以选择他或她喜欢的颜色)。

我可以用一个命名的颜色来做到这一点,如:

txt1.BackColor = System.Drawing.Color.PeachPuff;

但是我很难弄清楚如何使用RGB值设置颜色,如:

txt1.BackColor = SomeConverter("#FEC200");

这是怎么做的?

如何以编程方式设置Web窗体上文本框的背景色

txt1.BackColor = System.Drawing.ColorTranslator.FromHtml("#FEC200");

使用

txt1.BackColor = System.Drawing.ColorTranslator.FromHtml("#FEC200");

同样,如果你想把System.Drawing.Color转换回字符串(保存在db中),这样做:

private static String ConvertToHex(System.Drawing.Color color)
{
    return "#" + color.R.ToString("X2") + color.G.ToString("X2") + color.B.ToString("X2");
}
private static String ConvertToRGB(System.Drawing.Color color)
{
    return "RGB(" + color.R.ToString() + "," + color.G.ToString() + "," + color.B.ToString() + ")";
}

@Hossein-Narimani-Rad删除了另一个说使用ColorConverter.ConvertFromString的答案。我试了一下,让它像这样工作:

System.Drawing.ColorConverter conv = new System.Drawing.ColorConverter();
txt1.BackColor = (System.Drawing.Color)conv.ConvertFromString("#FEC200");

但是@Win和@Manish-Mishra的回答更简洁,也是我要用的。