2017-02-16 15 views
0

Я создал таблицу, где мне нужно изменить цвет фона столбцов на основе значения первой строки этого столбца.Изменение цвета фона в столбце таблицы на основе условия в Reporting

, если первое значение строки конкретного столбца равно 0 или дефис (-), мне нужно изменить 1.) цвет фона, что строки столбцов до серого в противном случае прозрачных 2.) Всех значений в строках этой конкретной колонки должны заполнять дефис (-).

Ниже приведено то, что я пробовал, но не смог достичь своего требования.

Примечание: я должен использовать элементы управления Reporting API, такие как XRTableCell. Также приветствуется другая идея достижения этого.

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

Не ваш код выглядит как опечатка .. Ваш код должен нормально работать в соответствии с тем, как вы реализуете, но Column имя не может содержать пространство, и если заявление выглядит хорошо. –

ответ

0

Ваша реализация верна, но в вашем описании проблемы есть некоторый пробел. Я также предлагаю вам тот же подход, если вы просто хотите изменить цвет отдельных ячеек столбца.

Ручка XRTableCell.BeforePrint события и изменить BACKCOLOR или Text свойства для объекта-отправителя. Чтобы получить обработанную запись, используйте метод XtraReportBase.GetCurrentRow или XtraReport.GetCurrentColumnValue.

Вы можете использовать FormattingRules, как описано в справочной статье Conditional Formatting или обработать событие BeforePrint для соответствующих ячеек и установить BackColor для объекта-отправителя на основе обработанного значения.

Смотрите эти:
Customize the Report Appearance
Changing background of XRTableCell according to color value in data column.
How to change the XRTable background color?

+0

Здесь мне нужно проверить столбец первой строки данных, как проверить или поместить условие так, чтобы, если первая строка равна нулю или hypen в столбце, мне нужно серое целое столбец, а затем заменить ноль дефисом для целых столбцов. В вашей ссылке я получаю код для изменения цвета, мне нужно изменить цвет, основываясь на состоянии первой строки столбца. – daisy