Back to Devexpress

XRTable.BeginInit() Method

xtrareports-devexpress-dot-xtrareports-dot-ui-dot-xrtable-8261007b.md

latest8.2 KB
Original Source

XRTable.BeginInit() Method

Starts the XRTable‘s initialization. Initialization occurs at runtime.

Namespace : DevExpress.XtraReports.UI

Assembly : DevExpress.XtraReports.v25.2.dll

NuGet Package : DevExpress.Reporting.Core

Declaration

csharp
public void BeginInit()
vb
Public Sub BeginInit

Remarks

To create XRTable at runtime and manually add XRTableRow and XRTableCell objects to it, it is always required to enclose this code inside the BeginInit and XRTable.EndInit method calls.

Because the final size of a table does not consider the size of its rows and cells , you need to manually set the table size and width (or, call the XRTable.AdjustSize method) before calling the XRTable.EndInit method.

Note

The height of a table should be explicitly specified only if the cell content is not expected to stretch the cells (e.g., this may happen when their XRTableCell.CanGrow property is enabled).

Example

The code sample below illustrates how to create a XRTable at runtime.

csharp
using DevExpress.XtraReports.UI;
// ...
// Create a report.
XtraReport report = new XtraReport();

// Create a detail band and add it to the report.
DetailBand detailBand = new DetailBand();
report.Bands.Add(detailBand);

// Create a table.
XRTable table = new XRTable();

// Add rows and columns to the table.
int numRows = 10;
int numCols = 20;

table.BeginInit();

for (int i = 0; i < numRows; i++) {
    XRTableRow row = new XRTableRow();
    table.Rows.Add(row);

    for (int j = 0; j < numCols; j++) {
        XRTableCell cell = new XRTableCell();
        table.Rows[i].Cells.Add(cell);
    }
}

// Set table size.
table.HeightF = 50;
table.WidthF = 500;

table.EndInit();

// Add the table to the detail band and adjust the band height.
detailBand.Controls.Add(table);
detailBand.HeightF = table.HeightF;
vb
Imports DevExpress.XtraReports.UI
' ...
            ' Create a report.
            Dim report As New XtraReport()

            ' Create a detail band and add it to the report.
            Dim detailBand As New DetailBand()
            report.Bands.Add(detailBand)

            ' Create a table.
            Dim table As New XRTable()

            ' Add rows and columns to the table.
            Dim numRows As Integer = 10
            Dim numCols As Integer = 20

            table.BeginInit()

            For i As Integer = 0 To numRows - 1
                Dim row As New XRTableRow()
                table.Rows.Add(row)

                For j As Integer = 0 To numCols - 1
                    Dim cell As New XRTableCell()
                    table.Rows(i).Cells.Add(cell)
                Next j
            Next i

            ' Set table size.
            table.HeightF = 50
            table.WidthF = 500

            table.EndInit()

            ' Add the table to the detail band and adjust the band height.
            detailBand.Controls.Add(table)
            detailBand.HeightF = table.HeightF

The following code snippets (auto-collected from DevExpress Examples) contain references to the BeginInit() method.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

winforms-create-a-custom-exporter-for-pivotgridcontrol-with-xtrareport/CS/Report_at_Runtime/PivotReportGenerator.cs#L153

csharp
InitNewTableInstancesAt(rep, font, out tableHeader, out tableDetail, new PointF(0, 0));
tableHeader.BeginInit();
tableDetail.BeginInit();

reporting-winforms-create-table-at-runtime/CS/TableReport.cs#L24

csharp
table.Borders = DevExpress.XtraPrinting.BorderSide.All;
table.BeginInit();

reporting-winforms-best-fit-table-column-width/CS/ReportHelper/ReportHelper.cs#L45

csharp
}
table.Key.BeginInit();
foreach(var otherTable in table.Value) {

reporting-use-multi-value-parameter-as-table-column-chooser/CS/T333639/SampleReport.cs#L39

csharp
this.tblHeader.BeginInit();
this.tblDetail.BeginInit();

reporting-mvc-generate-report-dynamically-for-specified-query/CS/ReportForQueryExample/PredefinedReports/TestReport.cs#L57

csharp
dynamicTable.BeginInit();
foreach (DevExpress.DataAccess.Sql.DataApi.IColumn dc in dataSource.Result[tableName].Columns)

winforms-create-a-custom-exporter-for-pivotgridcontrol-with-xtrareport/VB/Report_at_Runtime/PivotReportGenerator.vb#L156

vb
PivotReportGenerator.InitNewTableInstancesAt(rep, font, tableHeader, tableDetail, New System.Drawing.PointF(0, 0))
tableHeader.BeginInit()
tableDetail.BeginInit()

reporting-winforms-create-table-at-runtime/VB/TableReport.vb#L25

vb
table.Borders = DevExpress.XtraPrinting.BorderSide.All
table.BeginInit()

reporting-winforms-best-fit-table-column-width/VB/ReportHelper/ReportHelper.vb#L55

vb
table.Key.BeginInit()
For Each otherTable In table.Value

reporting-use-multi-value-parameter-as-table-column-chooser/VB/T333639/SampleReport.vb#L38

vb
Me.tblHeader.BeginInit()
Me.tblDetail.BeginInit()

reporting-winforms-best-fit-table-row-height/VB/dx_sample/XtraReport1.vb#L19

vb
CreateDocument()
xrTable2.BeginInit()
xrTable2.HeightF = DetailHeight

See Also

EndInit()

XRTable Class

XRTable Members

DevExpress.XtraReports.UI Namespace