“颜色”对话框中的自定义颜色集应该使用以下代码设置为{blue,blue}:
colorDialog1.CustomColors = new int[] { System.Drawing.Color.Blue.ToArgb(), 0xFF0000 };
colorDialog1.ShowDialog();
但是,我得到了另一套{黑色,蓝色}:
你知道我在这里做错了什么吗?谢谢。
最佳答案
你需要使用OLE颜色。实现这一点的简单方法是使用内置的ColorTranslator
对象,例如。
colorDialog1.CustomColors = new int[] {
ColorTranslator.ToOle(Color.Blue),
ColorTranslator.ToOle(Color.Red)
};
colorDialog1.ShowDialog();
如果需要从HTML颜色转换,也可以使用
ColorTranslator.FromHtml
方法,例如colorDialog1.CustomColors = new int[]
{
ColorTranslator.ToOle(Color.Blue),
ColorTranslator.ToOle(ColorTranslator.FromHtml("#FF0000"))
};
关于c# - 在ColorDialog中设置CustomColors,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11547166/