C# - 使用RGB值在颜色对话框中设置自定义颜色

时间:2015-02-27 05:08:37

标签: c# colors rgb hsl colordialog

我认为使用RGB设置自定义颜色将是默认方法,但似乎并非如此。 This stackoverflow answer非常有助于使用命名颜色(如红色或蓝色)或十六进制值来设置自定义颜色,但对于我正在处理的项目,最好使用RGB值设置颜色。或者,有时候HSL值可能会有所帮助。

我很感激帮助,展示了如何使用RGB设置colorDialog自定义颜色(也可能是HSL)。

谢谢

1 个答案:

答案 0 :(得分:2)

如果您使用与链接的问题相同的方法,则应该能够使用静态Color.FromArgb方法。我从未使用过ColorDialog控件,所以这只是猜测。

int r = 25; // or whatever
int g = 34;
int b = 43;

colorDialog1.CustomColors = new int[] { 
                                        ColorTranslator.ToOle(Color.FromArgb(r, g, b))
                                      };
colorDialog1.ShowDialog(); 

对于HSL,您可以参考this other answer。基本上,据我所知,你必须自己进行转换。