我編寫了一個程序從ColorDialogBox獲取Color,並使用ColorTranslator.ToHtml將其轉換爲十六進制值,但不返回十六進制值,而是返回純色名稱。有任何解決這個問題的方法嗎 ?在C#中將顏色名稱轉換爲十六進制
這裏是我的代碼:
private void chooseClr_Click(object sender, EventArgs e) {
colorDialog1.ShowDialog();
Color checking = colorDialog1.Color;
string hexColor = ColorTranslator.ToHtml(checking);
MessageBox.Show(hexColor);
}
也許你應該嘗試閱讀['ColorTranslator.ToHtml'文檔】(https://msdn.microsoft.com/en-us/l ibrary/system.drawing.colortranslator.tohtml(v = vs.110).aspx):「此方法將Color結構轉換爲HTML顏色的字符串表示形式。這是常用的顏色名稱,如「紅色」,「藍色」或「綠色」,而不是數字顏色值的字符串表示形式,如「FF33AA」。「 –
可能的重複[如何轉換顏色名稱到相應的十六進制表示?](http://stackoverflow.com/questions/8336375/how-to-convert-color-name-to-the-corresponding-hexadecimal-representation) – j4rey89
可能重複的[Convert .Net顏色對象到十六進制代碼和返回](http://stackoverflow.com/questions/982028/convert-net-color-objects-to-hex-codes-and-back) –