2017-02-16 55 views
0

我已經創建了表格,我需要根據該列的第一行的值更改列的背景顏色。根據報告中的條件改變表格列中的背景顏色

如果特定列的第一行值爲0或連字符( - ),則需要更改 1.)該列的背景色爲灰色,否則爲透明 2.)該特定列的行中的所有值應該填充連字符( - )。

下面是我試過的,但不能達到我的要求。

注意:我應該使用像XRTableCell這樣的Reporting API控件。其他的想法也很受歡迎。

using System; 
using System.Drawing; 
using DevExpress.XtraReports.UI; 

private void tableCell12_BeforePrint_1(object sender, System.Drawing.Printing.PrintEventArgs e) 
{ 
    XRTableCell tableCell = sender as XRTableCell; 
    double bancoAtivo = Convert.ToDouble(tableCell.Report.GetCurrentColumnValue("Campaign Count")); 

    if (bancoAtivo = 0) 
    { 
     tableCell.BackColor = Color.Grey; 
    } 
    else 
    { 
     tableCell.BackColor = Color.Transparent; 
    } 
} 
+0

難道不是你的代碼看起來像一個錯字。您的代碼應該做工精細根據你實現,但列名不能包含空格,如果路聲明看起來不錯。 –

回答

0

您的實施方案是正確的,但您在描述該問題時存在一些空白。如果您只是想更改單列單元格的顏色,我也建議您使用相同的方法。

處理XRTableCell.BeforePrint事件並更改發件人對象的Backcolor 或Text屬性。要獲取處理的記錄, 使用XtraReportBase.GetCurrentRowXtraReport.GetCurrentColumnValue方法。

既可以使用FormattingRules作爲Conditional Formatting幫助文章中描述或處理BeforePrint事件相應的單元,並設置背景色爲基於經處理的值的發送者對象。

參考這些:
Customize the Report Appearance
Changing background of XRTableCell according to color value in data column.
How to change the XRTable background color?

+0

這裏我需要檢查數據列的第一行,如何檢查或放置條件,以便如果第一行爲零或在列中顯示,我需要灰色整列,然後用連字符替換整列。在你的鏈接中,我得到了改變顏色的代碼,我需要根據第一行的條件改變顏色。 – daisy