2013-07-19 81 views
10

我正在使用SSRS reportviewer來使用對象生成報告。在我的程序中,我要求用戶輸入一串常用顏色,如"Red",「Blue"」等。然後,我想生成三種顏色的陰影,並使用此顏色填充報告中的面積圖。我這樣做我改變顏色的透明度(阿爾法)如何更改c中顏色的透明度#

這是我的代碼,該字符串轉換成顏色:

newitem.ChartColor = "red"; 
Color mycolor = Color.FromName(newitem.ChartColor); 

不過,現在我想產生兩個以上的顏色與同色光作爲紅色但不同的阿爾法(不透明度),使它們看起來更輕,類似#56FF0000

我嘗試將值傳遞給Color的A屬性,但它是隻讀的。

任何幫助表示讚賞。

回答

3

您可以使用此功能

static Color SetTransparency(int A, Color color) 
    { 
     return Color.FromArgb(A, color.R, color.G, color.B); 
    } 
+0

我不認爲'SetTransparency'是一個明確的名稱。它不會改變現有顏色的屬性,而是創建並返回一個新的顏色。 – DaveInCaz

1

我認爲需要包含這些答案中什麼是阿爾法值表示的顏色是如何透明0是最透明,255是最不透明的。這裏是一個總結:

     A L P H A V A L U E 
0 [<--- most transparent] ... ... ... [most opaque --->] 255 
相關問題