internal void ResetContext(TableGroupCollection newRenderSubGroups, TableRowsCollection newRenderDetails) { if (m_isDetailGroup) { m_group.CurrentRenderGroupIndex = -1; _ = m_rowDefinitionEndIndex; _ = m_rowDefinitionStartIndex; if (newRenderDetails != null) { m_renderDetails = newRenderDetails; } ((ShimTableMemberCollection)m_children).UpdateDetails(m_renderDetails[0]); } else if (m_group != null && m_group.RenderGroups != null) { m_group.CurrentRenderGroupIndex = -1; if (newRenderSubGroups != null) { m_group.RenderGroups = new ShimRenderGroups(newRenderSubGroups); } if (m_children != null) { TableGroup tableGroup = m_group.CurrentShimRenderGroup as TableGroup; ((ShimTableMemberCollection)m_children).UpdateHeaderFooter(tableGroup.GroupHeader, tableGroup.GroupFooter); ((ShimTableMemberCollection)m_children).ResetContext(null); } } SetNewContext(fromMoveNext: true); }
public void ResetContext(TableGroupCollection newRenderSubGroups, TableRowsCollection newRenderDetails) { if (this.m_isDetailGroup) { base.m_group.CurrentRenderGroupIndex = -1; if (newRenderDetails != null) { this.m_renderDetails = newRenderDetails; } ((ShimTableMemberCollection)base.m_children).UpdateDetails(this.m_renderDetails[0]); } else if (base.m_group != null && base.m_group.RenderGroups != null) { base.m_group.CurrentRenderGroupIndex = -1; if (newRenderSubGroups != null) { base.m_group.RenderGroups = new ShimRenderGroups(newRenderSubGroups); } if (base.m_children != null) { TableGroup tableGroup = base.m_group.CurrentShimRenderGroup as TableGroup; ((ShimTableMemberCollection)base.m_children).UpdateHeaderFooter(tableGroup.GroupHeader, tableGroup.GroupFooter); ((ShimTableMemberCollection)base.m_children).ResetContext(null); } } this.SetNewContext(true); }
private void CreateInnerDynamicGroups(List <ShimTableMember> rowGroups, TableGroupCollection renderGroupCollection, Tablix owner, ShimTableMember parent) { if (renderGroupCollection != null) { ShimTableMember item = new ShimTableMember(this, owner, parent, rowGroups.Count, new ShimRenderGroups(renderGroupCollection)); rowGroups.Add(item); } }
internal ShimRenderGroups(TableGroupCollection renderGroups) { m_type = DataRegion.Type.Table; m_renderTableGroups = renderGroups; }
private TablixMember[] CreateInnerHierarchy(Tablix owner, ShimTableMember parent, TableHeaderFooterRows headerRows, TableHeaderFooterRows footerRows, TableGroupCollection subGroups, TableRowsCollection detailRows, ref int dynamicSubgroupChildIndex) { List <ShimTableMember> list = new List <ShimTableMember>(); bool noKeepWith = subGroups == null && detailRows == null; CreateHeaderFooter(list, headerRows, DetermineKeepWithGroup(isHeader: true, headerRows, noKeepWith), owner, parent, parent == null && owner.RenderTable.FixedHeader); if (subGroups != null) { dynamicSubgroupChildIndex = list.Count; CreateInnerDynamicGroups(list, subGroups, owner, parent); } else if (detailRows != null) { dynamicSubgroupChildIndex = list.Count; list.Add(new ShimTableMember(this, owner, parent, dynamicSubgroupChildIndex, detailRows)); } CreateHeaderFooter(list, footerRows, DetermineKeepWithGroup(isHeader: false, footerRows, noKeepWith), owner, parent, isFixedTableHeader: false); return(list.ToArray()); }
public ShimRenderGroups(TableGroupCollection renderGroups) { this.m_type = DataRegion.Type.Table; this.m_renderTableGroups = renderGroups; }