Exemple #1
0
        void InitGroupHeaders(MVCxGridViewState gridViewState)
        {
            GridViewDataColumnStateCollection groupedColumns = gridViewState.GroupedColumns;

            for (int i = groupedColumns.Count - 1; i >= 0; i--)
            {
                {
                    GridViewDataColumnState groupedColumn = groupedColumns[i];
                    GroupHeaderBand         gb            = new GroupHeaderBand();
                    gb.Height = bandHeight;
                    XRLabel l = new XRLabel
                    {
                        Text      = groupedColumn.FieldName + ": [" + groupedColumn.FieldName + "]",
                        LocationF = new PointF(initialGroupOffset + i * 10, 0),
                        BackColor = Color.Beige,
                        SizeF     = new SizeF((report.PageWidth - (report.Margins.Left + report.Margins.Right)) - (initialGroupOffset + i * subGroupOffset), bandHeight)
                    };
                    gb.Controls.Add(l);
                    gb.RepeatEveryPage = shouldRepeatGroupHeadersOnEveryPage;
                    GroupField gf = new GroupField(groupedColumn.FieldName, groupedColumn.SortOrder == ColumnSortOrder.Ascending ? XRColumnSortOrder.Ascending : XRColumnSortOrder.Descending);
                    gb.GroupFields.Add(gf);
                    report.Bands.Add(gb);
                }
            }
        }
Exemple #2
0
 public MVCxGridViewState(MVCxGridView gridView)
 {
     Columns        = new GridViewDataColumnStateCollection(gridView.VisibleColumns);
     GroupedColumns = new GridViewDataColumnStateCollection(gridView.GetGroupedColumns());
     TotalSummary   = new System.Collections.ObjectModel.Collection <MVCxSummaryItemState>();
     foreach (ASPxSummaryItem item in gridView.TotalSummary)
     {
         TotalSummary.Add(new MVCxSummaryItemState(item));
     }
     FilterExpression = gridView.FilterExpression;
 }
Exemple #3
0
        void InitSortings(MVCxGridViewState gridViewState)
        {
            GridViewDataColumnStateCollection columns        = gridViewState.Columns;
            GridViewDataColumnStateCollection groupedColumns = gridViewState.GroupedColumns;

            for (int i = 0; i < columns.Count; i++)
            {
                if (!groupedColumns.Contains(columns[i]))
                {
                    if (columns[i].SortOrder != ColumnSortOrder.None)
                    {
                        ((DetailBand)report.Bands[BandKind.Detail]).SortFields.Add(new GroupField(columns[i].FieldName, columns[i].SortOrder == ColumnSortOrder.Ascending ? XRColumnSortOrder.Ascending : XRColumnSortOrder.Descending));
                    }
                }
            }
        }
Exemple #4
0
        private List <MVCxColumnInfo> GetColumnsInfo(MVCxGridViewState gridViewState, int pagewidth)
        {
            List <MVCxColumnInfo>             columns        = new List <MVCxColumnInfo>();
            GridViewDataColumnStateCollection visibleColumns = gridViewState.Columns;

            foreach (GridViewDataColumnState dataColumn in visibleColumns)
            {
                MVCxColumnInfo column = new MVCxColumnInfo(dataColumn)
                {
                    ColumnCaption = string.IsNullOrEmpty(dataColumn.Caption) ? dataColumn.FieldName : dataColumn.Caption,
                    ColumnWidth   = ((int)pagewidth / visibleColumns.Count),
                    FieldName     = dataColumn.FieldName,
                    IsVisible     = true
                };
                columns.Add(column);
            }
            return(columns);
        }
Exemple #5
0
        void InitDetailsAndPageHeader(MVCxGridViewState gridViewState)
        {
            GridViewDataColumnStateCollection groupedColumns = gridViewState.GroupedColumns;

            int pagewidth = (report.PageWidth - (report.Margins.Left + report.Margins.Right)) - groupedColumns.Count * subGroupOffset;
            List <MVCxColumnInfo> columns = GetColumnsInfo(gridViewState, pagewidth);

            CustomizeColumnsCollection(report, new ColumnsCreationEventArgs(pagewidth)
            {
                ColumnsInfo = columns
            });

            report.Bands.Add(new DetailBand()
            {
                HeightF = bandHeight
            });
            report.Bands.Add(new PageHeaderBand()
            {
                HeightF = bandHeight
            });

            XRTable    headerTable = new XRTable();
            XRTableRow row         = new XRTableRow();
            XRTable    detailTable = new XRTable();
            XRTableRow row2        = new XRTableRow();

            for (int i = 0; i < columns.Count; i++)
            {
                if (columns[i].IsVisible)
                {
                    XRTableCell cell = new XRTableCell();
                    cell.Width = columns[i].ColumnWidth;
                    cell.Text  = columns[i].FieldName;
                    row.Cells.Add(cell);

                    XRTableCell cell2 = new XRTableCell();
                    cell2.Width = columns[i].ColumnWidth;
                    ControlCustomizationEventArgs cc = new ControlCustomizationEventArgs()
                    {
                        FieldName  = columns[i].FieldName,
                        IsModified = false,
                        Owner      = cell2
                    };
                    CustomizeColumn(report, cc);
                    if (cc.IsModified == false)
                    {
                        cell2.DataBindings.Add("Text", null, columns[i].FieldName);
                    }
                    detailsInfo.Add(columns[i].GridViewColumn, cell2);
                    row2.Cells.Add(cell2);
                }
            }
            headerTable.Rows.Add(row);
            headerTable.Width     = pagewidth;
            headerTable.LocationF = new PointF(groupedColumns.Count * subGroupOffset, 0);
            headerTable.Borders   = BorderSide.Bottom;

            detailTable.Rows.Add(row2);
            detailTable.LocationF = new PointF(groupedColumns.Count * subGroupOffset, 0);
            detailTable.Width     = pagewidth;

            report.Bands[BandKind.PageHeader].Controls.Add(headerTable);
            report.Bands[BandKind.Detail].Controls.Add(detailTable);
        }