C# 如何从VisualStudio中的颜色对话框中获取十六进制颜色代码?

C# 如何从VisualStudio中的颜色对话框中获取十六进制颜色代码?,c#,visual-studio-2015,color-picker,C#,Visual Studio 2015,Color Picker,我在visual studio中有一个颜色对话框,我目前正在使用此c代码显示颜色对话框并将颜色设置为面板: private void ColorButton_Click(object sender, EventArgs e) { if (colorDialog1.ShowDialog() == DialogResult.OK) { ColorPanel.BackColor = colorDialog1.Color; } } 如何将标签设置为颜色选择器的十

我在visual studio中有一个颜色对话框,我目前正在使用此c代码显示颜色对话框并将颜色设置为面板:

private void ColorButton_Click(object sender, EventArgs e)
{
    if (colorDialog1.ShowDialog() == DialogResult.OK)
    {
        ColorPanel.BackColor = colorDialog1.Color;
    }
}
如何将标签设置为颜色选择器的十六进制颜色代码?

您可以试试这个

  • 获取颜色的
    ARGB
    (Alpha、红色、绿色、蓝色)表示
  • 过滤掉Alpha通道:
    &0x00FFFFFF
  • 将值格式化为十六进制(
    “X6”
  • 实施

      String code = (colorDialog1.Color.ToArgb() & 0x00FFFFFF).ToString("X6");
    
    编辑:如果要从
    代码
    获取
    颜色
    ,请尝试从argb中获取

      string code = "FFDDAA";
    
      Color color = Color.FromArgb(Convert.ToInt32(code, 16));
    

    比我快1秒钟…ColorTranslator.ToHtml(colorDialog1.Color);你应该把这个答案贴在duplikate标记的答案中aswell@fubo:我明白了,谢谢!我也发布了(改编)重复问题的答案。有人知道如何扭转这种局面吗?要从十六进制转换为彩色吗?@Mark:try
    Color.FromArgb
    Convert.ToInt32
    (请参见我的编辑)@DmitryBychenko无法实现此功能<代码>System.Drawing.ColorTranslator.FromHtml(“#000000”)是我最终使用的。