예제 #1
0
 private void GenerateDataCells(ShimDataMember rowParentMember, ShimDataMember columnParentMember, ShimDataMemberCollection columnMembers)
 {
     if (columnMembers == null)
     {
         this.m_cells.Add(new ShimDataCell(base.m_owner, base.m_rowIndex, this.m_cells.Count, rowParentMember, columnParentMember));
     }
     else
     {
         int count = columnMembers.Count;
         for (int i = 0; i < count; i++)
         {
             ShimDataMember shimDataMember = ((ReportElementCollectionBase <DataMember>)columnMembers)[i] as ShimDataMember;
             this.GenerateDataCells(rowParentMember, shimDataMember, shimDataMember.Children as ShimDataMemberCollection);
         }
     }
 }
 private void AppendDataRows(ShimDataMember rowParentMember, ShimDataMemberCollection rowMembers)
 {
     if (rowMembers == null)
     {
         this.m_dataRows.Add(new ShimDataRow(base.m_owner, this.m_dataRows.Count, rowParentMember));
     }
     else
     {
         int count = rowMembers.Count;
         for (int i = 0; i < count; i++)
         {
             ShimDataMember shimDataMember = ((ReportElementCollectionBase <DataMember>)rowMembers)[i] as ShimDataMember;
             this.AppendDataRows(shimDataMember, shimDataMember.Children as ShimDataMemberCollection);
         }
     }
 }
 public void UpdateCells(ShimDataMember innermostMember)
 {
     if (innermostMember != null && innermostMember.Children == null)
     {
         if (!innermostMember.IsColumn)
         {
             int memberCellIndex = innermostMember.MemberCellIndex;
             int count           = this.m_dataRows[memberCellIndex].Count;
             for (int i = 0; i < count; i++)
             {
                 ((ShimDataCell)((ReportElementCollectionBase <DataCell>) this.m_dataRows[memberCellIndex])[i]).SetNewContext();
             }
         }
         else
         {
             int memberCellIndex2 = innermostMember.MemberCellIndex;
             int count2           = this.m_dataRows.Count;
             for (int j = 0; j < count2; j++)
             {
                 ((ShimDataCell)((ReportElementCollectionBase <DataCell>) this.m_dataRows[j])[memberCellIndex2]).SetNewContext();
             }
         }
     }
 }
        public ShimDataMemberCollection(IDefinitionPath parentDefinitionPath, CustomReportItem owner, bool isColumnMember, ShimDataMember parent, DataGroupingCollection definitionGroups)
            : base(parentDefinitionPath, owner)
        {
            this.m_isColumnMember       = isColumnMember;
            this.m_definitionGroups     = definitionGroups;
            this.m_definitionStartIndex = owner.GetCurrentMemberCellDefinitionIndex();
            if (definitionGroups[0] != null && definitionGroups[0][0] != null)
            {
                this.m_isStatic = definitionGroups[0][0].IsStatic;
            }
            int count = definitionGroups.Count;

            base.m_children = new ShimDataMember[count];
            for (int i = 0; i < count; i++)
            {
                base.m_children[i] = new ShimDataMember(this, owner, parent, i, this.m_isColumnMember, this.m_isStatic, definitionGroups[i], i);
            }
            this.m_definitionEndIndex = owner.GetCurrentMemberCellDefinitionIndex();
        }
        public ShimDataMember(IDefinitionPath parentDefinitionPath, CustomReportItem owner, ShimDataMember parent, int parentCollectionIndex, bool isColumn, bool isStatic, AspNetCore.ReportingServices.ReportRendering.DataMemberCollection renderMembers, int staticIndex)
            : base(parentDefinitionPath, owner, parent, parentCollectionIndex)
        {
            this.m_definitionStartIndex = owner.GetCurrentMemberCellDefinitionIndex();
            this.m_isColumn             = isColumn;
            this.m_isStatic             = isStatic;
            this.m_renderMembers        = renderMembers;
            this.m_staticIndex          = staticIndex;
            DataGroupingCollection children;

            if (isStatic)
            {
                children = renderMembers[staticIndex].Children;
            }
            else
            {
                base.m_group = new Group(owner, new ShimRenderGroups(renderMembers));
                children     = renderMembers[0].Children;
            }
            if (children != null)
            {
                base.m_children = new ShimDataMemberCollection(this, owner, isColumn, this, children);
            }
            else
            {
                owner.GetAndIncrementMemberCellDefinitionIndex();
            }
            this.m_definitionEndIndex = owner.GetCurrentMemberCellDefinitionIndex();
        }
예제 #6
0
 public ShimDataRow(CustomReportItem owner, int rowIndex, ShimDataMember parentDataMember)
     : base(owner, rowIndex)
 {
     this.m_cells = new List <ShimDataCell>();
     this.GenerateDataCells(parentDataMember, null, owner.CustomData.DataColumnHierarchy.MemberCollection as ShimDataMemberCollection);
 }
예제 #7
0
 public ShimDataCell(CustomReportItem owner, int rowIndex, int colIndex, ShimDataMember rowParentMember, ShimDataMember columnParentMember)
     : base(owner, rowIndex, colIndex)
 {
     this.m_rowParentMember    = rowParentMember;
     this.m_columnParentMember = columnParentMember;
 }