我有一個顏色#cccc00
,我從數據庫中檢索,並用於繪製控件的背景。爲什麼System.Drawing.Color將'ff'添加到十六進制代碼?
因爲我不知道該字符串將是十六進制或顏色的名稱(即黃色或#cccc00),我檢查字符串,像這樣:
string color = "#cccc00";
if (color.IndexOf('#') >= 0)
{
Color _color = System.Drawing.ColorTranslator.FromHtml(color);
buttonSelector.BackColor = _color;
// _color.Name now equals ffcccc00
}
這工作正常。問題是我也使用該字符串(顏色)來搜索一個SQL表。問題是_color.Name
返回ffcccc00,所以搜索將不會返回任何內容,因爲sql表具有它作爲#cccc00。
因此,無需通過刪除/替換ff來更改字符串,是否有辦法以我用於設置控件背景色的相同格式檢索值?我不喜歡刪除/替換,因爲它可以使用十六進制或實際的顏色名稱。
謝謝。
是不是透明度?像rgba(r,g,b,a)? –
我不確定你的意思。 – rbhat
我的意思是alpha通道的顏色,它不是4部分 –