Я использую DevExpress XtraReports в приложении WinForms, но в равной степени применим и к другим инструментам отчетности.
Я бы хотел выполнить некоторую логику для каждой строки в отчете, так как он «визуализируется», построчно. В частности, я хотел бы скрыть штрих-код, если данные для штрих-кода недоступны.
В настоящее время я делаю следующее:
private void xrBarCode2_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
{
var barcode = (XRBarCode)sender;
if (barcode.Text.Trim() == "")
{
barcode.Visible = false;
lblWarning.Visible = true;
}
else
{
barcode.Visible = true;
lblWarning.Visible = false;
}
}
Но это просто пахнет плохо. Я хотел бы получить доступ к текущей строке данных в этом методе и работать с «реальными» свойствами объекта, но не могу. Каков типичный шаблон для этого в других генераторах отчетов? Я даже использую правильное событие? Я пытался Detail_BeforePrint
, но у меня не было никакой дополнительной информации.