我有一个
ComboBox cmb = new ComboBox();
我想显示一个颜色列表,如果可能的话,从明亮到最黑暗的顺序,但我没有找到任何有用的例子
如何渲染组合框以显示颜色列表?
任何帮助真的很感激
由于
编辑:问题已关闭,由我自己解决,谢谢大家。
答案 0 :(得分:0)
要计算亮度(用于分类),请使用亮度系数:
var color = Color.FromArgb(240,230,210); // use whatever color you're wanting to rank
var luminosity = 0.299*color.R + 0.587*color.G+ 0.114*color.B;
至于将它渲染成组合框,我知道用标准的Window Forms Combobox无法做到这一点。但是,制作自己的ComboBox控件并不会太难。我猜你可以在WPF中很容易地做到这一点。至于采取的方法 - 你需要生成一个图形对象并在控件上绘制颜色的矩形 - 或者绘制到内存中的位图并将图片框的图像属性设置为该图像。祝你好运!