Nếu bạn không muốn sử dụng ColorTranslator, bạn có thể thực hiện dễ dàng:
string colorcode = "#FFFFFF00";
int argb = Int32.Parse(colorcode.Replace("#", ""), NumberStyles.HexNumber);
Color clr = Color.FromArgb(argb);
Mã màu chỉ là đại diện thập lục phân của giá trị ARGB.
BIÊN TẬP
Nếu bạn cần sử dụng 4 giá trị thay vì một số nguyên, bạn có thể sử dụng giá trị này (kết hợp nhiều nhận xét):
string colorcode = "#FFFFFF00";
colorcode = colorcode.TrimStart('#');
Color col; // from System.Drawing or System.Windows.Media
if (colorcode.Length == 6)
col = Color.FromArgb(255, // hardcoded opaque
int.Parse(colorcode.Substring(0,2), NumberStyles.HexNumber),
int.Parse(colorcode.Substring(2,2), NumberStyles.HexNumber),
int.Parse(colorcode.Substring(4,2), NumberStyles.HexNumber));
else // assuming length of 8
col = Color.FromArgb(
int.Parse(colorcode.Substring(0, 2), NumberStyles.HexNumber),
int.Parse(colorcode.Substring(2, 2), NumberStyles.HexNumber),
int.Parse(colorcode.Substring(4, 2), NumberStyles.HexNumber),
int.Parse(colorcode.Substring(6, 2), NumberStyles.HexNumber));
Lưu ý 1 : NumberStyles nằm trong System.Globalization.
Lưu ý 2 : vui lòng cung cấp kiểm tra lỗi của riêng bạn (mã màu phải là giá trị thập lục phân của 6 hoặc 8 ký tự)