private void addPageSummary()
{
if (SharedData.SummarySettings == null || SharedData.SummarySettings.PageSummarySettings == null ||
!SharedData.SummarySettings.PageSummarySettings.ShowOnEachPage) return;
if (SharedData.MainTableEvents != null)
SharedData.MainTableEvents.RowStarted(new EventsArguments { PdfDoc = SharedData.PdfDoc, PdfWriter = SharedData.PdfWriter, Table = MainTable, RowType = RowType.PageSummaryRow, ColumnCellsSummaryData = SharedData.ColumnCellsSummaryData, PreviousTableRowData = _previousTableRowData, PageSetup = SharedData.PageSetup, PdfFont = SharedData.PdfFont, PdfColumnsAttributes = SharedData.PdfColumnsAttributes });
for (var columnNumber = 0; columnNumber < SharedData.ColumnsCount; columnNumber++)
{
var backgroundColor = SharedData.Template.PageSummaryRowBackgroundColor;
var foreColor = SharedData.Template.PageSummaryRowFontColor;
var col = SharedData.PdfColumnsAttributes[columnNumber];
int location = -1;
switch (SharedData.SummarySettings.PageSummarySettings.SummaryLocation)
{
case SummaryLocation.AtFirstDefinedAggregateCell:
if (columnNumber == getFirstDefinedAggregateCell())
location = columnNumber;
break;
case SummaryLocation.AtRowNumberColumn:
if (columnNumber == 0)
location = 0;
break;
case SummaryLocation.AtSpecifiedLabelColumnProperty:
if (SharedData.SummarySettings.PageSummarySettings.LabelColumnProperty == col.PropertyName)
location = columnNumber;
break;
}
if (location != -1)
TableCellHelper.AddSummaryCell(backgroundColor[0], foreColor, location, CellType.PageSummaryCell, RowType.PageSummaryRow);
else
TableCellHelper.AddSummaryCell(backgroundColor[0], foreColor, null, columnNumber, RowType.PageSummaryRow, CellType.PageSummaryCell);
}
if (SharedData.MainTableEvents != null) SharedData.MainTableEvents.RowAdded(new EventsArguments { PdfDoc = SharedData.PdfDoc, PdfWriter = SharedData.PdfWriter, Table = MainTable, RowType = RowType.PageSummaryRow, ColumnCellsSummaryData = SharedData.ColumnCellsSummaryData, PreviousTableRowData = _previousTableRowData, PageSetup = SharedData.PageSetup, PdfFont = SharedData.PdfFont, PdfColumnsAttributes = SharedData.PdfColumnsAttributes });
}