Пример #1
0
        internal ShimTableRow(Tablix owner, int rowIndex, Microsoft.ReportingServices.ReportRendering.TableRow renderRow)
            : base(owner, rowIndex)
        {
            m_cells  = new List <ShimTableCell>();
            m_height = new ReportSize(renderRow.Height);
            TableCellCollection tableCellCollection = renderRow.TableCellCollection;

            if (tableCellCollection == null)
            {
                return;
            }
            int count = tableCellCollection.Count;

            m_rowCellDefinitionMapping = new int[owner.RenderTable.Columns.Count];
            int num = 0;

            for (int i = 0; i < count; i++)
            {
                int colSpan = tableCellCollection[i].ColSpan;
                for (int j = 0; j < colSpan; j++)
                {
                    m_rowCellDefinitionMapping[num] = ((j == 0) ? i : (-1));
                    num++;
                }
                m_cells.Add(new ShimTableCell(owner, rowIndex, i, colSpan, tableCellCollection[i].ReportItem));
            }
        }
Пример #2
0
        internal void UpdateCells(Microsoft.ReportingServices.ReportRendering.TableRow renderRow)
        {
            int count = m_cells.Count;
            TableCellCollection tableCellCollection = renderRow?.TableCellCollection;

            for (int i = 0; i < count; i++)
            {
                m_cells[i].SetCellContents(tableCellCollection?[i]);
            }
        }