2011-03-05 11 views
1

我有一個SQL Server 2005 Express報表服務器,我試圖根據存儲在數據庫中的值更新報表以顯示一個彩色標籤。如何根據數據集中的值爲報表服務中的標籤着色?

我當前將顏色存儲爲aRGB值,但如果需要,我可以更改此顏色。

我見過有關如何在顏色屬性中使用表達式的帖子,但我無法在其中嵌入c#。

謝謝!

回答

1

經過一番挖掘,我發現你必須使用VB代碼。

這裏的步驟。

  1. 一個參考System.Drawing中添加在報告屬性 - >引用標籤
  2. 添加此自定義代碼報告屬性 - >碼片

    公共功能GetMyColour(myColour爲整數)作爲字符串 Dim colorObj As System.Drawing.Color = System.Drawing.Color.FromArgb(myColour)

    return String.Format(「#{0:X2} {1:X2} {2:X2}」,colorObj .R,colorObj.G,colorObj.B) End Function

  3. 設置要設置這個

    = Code.GetMyColour的顏色報表對象(第一(場!RecipeColour.Value, 「StockControl」))

+0

這看起來確實不錯,但是將彙編引用添加到報告的整個概念對我來說是新的。當我點擊省略號時,我得到一個openFileDialog,以我的本地機器上的dll爲目標。我應該在哪裏指出它的作用? – LOAS 2012-06-28 13:04:02

+0

我通過手動輸入完全限定的程序集名稱(在這種情況下:'System.Drawing,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a' - 由ILSpy友好提供)來實現它。我仍然不明白爲什麼給我一個本地文件瀏覽器。 – LOAS 2012-06-28 13:49:48

1

SSRS使用VB.NET,而不是C#,並且大多數地方都會接受代碼,它的前綴是'=',讓解析器知道它是代碼。我不知道你試圖設置標籤的位置(在表格中,在浮動文本框等中),但它很可能是可行的。

+1

它的顏色屬性表達式在浮動文本框中 - 我可以使用像Color.FromArgb(myDbValue)? – littlechris 2011-03-05 22:06:12

相關問題