XRTableCell.RowSpan Property
Specifies the number of rows in the XRTable control that the cell spans.
Namespace: DevExpress.XtraReports.UI
Assembly: DevExpress.XtraReports.v24.1.dll
NuGet Package: DevExpress.Reporting.Core
Declaration
[DefaultValue(1)]
[SRCategory(ReportStringId.CatBehavior)]
public int RowSpan { get; set; }
Property Value
Type | Default | Description |
---|---|---|
Int32 | 1 | An integer value that specifies the number of rows. |
Remarks
The RowSpan property allows you to specify the number of merged cells. For this property to work properly, a table should have a cell with the same width in the row below the current one.
You can also make a cell occupy several columns by specifying appropriate cell widths. The width of the target cell should be equal to the sum of the cells in the neighboring row.
Note
- Users cannot edit merged cells in Preview.
- New controls cannot be dropped onto the merged cells.
- The XRTableCell.CanGrow and XRTableCell.CanShrink properties have no effect on the merged cells.
- The odd and even styles are not applied to merged cells when a report is exported to HTML or to file formats that support a continuous (table-like) layout (such as TXT or CSV).
- Cells that span multiple rows may be split between pages. A split cell duplicates its content on the next page.
- The RowSpan value can be interpreted incorrectly when a table changes layout in the
BeforePrint
event handler.
Example
The following code demonstrates how to create a table with the layout shown in the image below.
using DevExpress.XtraReports.UI;
// ...
private XRTable CreateTable() {
XRTable table = new XRTable();
table.Borders = DevExpress.XtraPrinting.BorderSide.All;
table.BeginInit();
table.SizeF = new SizeF(400f, 50f);
XRTableRow row1 = new XRTableRow() { HeightF = 25f };
XRTableRow row2 = new XRTableRow() { HeightF = 25f };
row1.Cells.AddRange(new XRTableCell[] {
new XRTableCell() {Text = "Cell1", WidthF = 100f, RowSpan = 2},
new XRTableCell() {Text = "Cell2", WidthF = 100f},
new XRTableCell() {Text = "Cell3", WidthF = 200f}
});
row2.Cells.AddRange(new XRTableCell[] {
new XRTableCell() {WidthF = 100f},
new XRTableCell() {Text = "Cell4", WidthF = 100f},
new XRTableCell() {Text = "Cell5", WidthF = 100f},
new XRTableCell() {Text = "Cell6", WidthF = 100f}
});
table.Rows.AddRange(new XRTableRow[] { row1, row2 });
table.EndInit();
return table;
}
Related GitHub Examples
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the RowSpan property.
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.