public void VisitCellsForRow(int rowIndex, RecordVisitor rv) { CellValueRecordInterface[] rowCells = records[rowIndex]; if (rowCells == null) { throw new ArgumentException("Row [" + rowIndex + "] is empty"); } for (int i = 0; i < rowCells.Length; i++) { RecordBase cvr = (RecordBase)rowCells[i]; if (cvr == null) { continue; } int nBlank = CountBlanks(rowCells, i); if (nBlank > 1) { rv.VisitRecord(CreateMBR(rowCells, i, nBlank)); i += nBlank - 1; } else if (cvr is RecordAggregate) { RecordAggregate agg = (RecordAggregate)cvr; agg.VisitContainedRecords(rv); } else { rv.VisitRecord((Record)cvr); } } }
public RecordAggregateTreeNode(RecordAggregate record) { this.Record = record; this.Text = record.GetType().Name; this.ImageKey = "Folder"; this.SelectedImageKey = "Folder"; GetChildren(); }
private static void SpillAggregate(RecordAggregate ra, List<RecordBase> recs) { ra.VisitContainedRecords(new RecordVisitor1(recs)); }