XRTableCell Class
A single Cell in an XRTable's Row.
Namespace: DevExpress.XtraReports.UI
Assembly: DevExpress.XtraReports.v18.2.dll
Declaration
[DefaultBindableProperty("Text")]
public class XRTableCell :
XRLabel,
IBrickOwner,
IWeighty
<DefaultBindableProperty("Text")>
Public Class XRTableCell
Inherits XRLabel
Implements IBrickOwner,
IWeighty
Related API Members
The following members accept/return XRTableCell objects:
Remarks
Use XRTableCell objects to place text or other controls in a table. A table cell behaves like an ordinary label control and displays text from its Text property. If an XRTableCell object contains other controls, it cannot display text.
You can use the cell's Controls property to access the control collection, and the cell's Row property to access its row.
NOTE
When creating large tables in code, you can increase the report generator performance by setting the XRTableCell.Weight property to 1 for all table cells.
Use markup in table cells to change the text's appearance. The markup works when the DevExpress.XtraReports.UI.XRLabel.AllowMarkupText property is set to true. Refer to DevExpress.XtraReports.UI.XRLabel.AllowMarkupText for more information.
Markup Text
Use markup in table cells to change the text appearance. This behavior is in effect when the DevExpress.XtraReports.UI.XRLabel.AllowMarkupText property is set to true. Refer to DevExpress.XtraReports.UI.XRLabel.AllowMarkupText for more information.
Examples
The code sample below illustrates how to create an XRTable at runtime.
TIP
Online Example: Runtime table creation best practices (iterative approach)
using DevExpress.XtraReports.UI;
// ...
private static SqlDataSource CreateSQLDataSource() {
// Create a data source with the connection parameters.
Access97ConnectionParameters connectionParameters = new Access97ConnectionParameters("Data/nwind.mdb", "", "");
SqlDataSource dataSource = new SqlDataSource(connectionParameters);
// Create a SELECT query.
SelectQuery query = SelectQueryFluentBuilder
.AddTable("Products")
.SelectColumn("ProductName")
.SelectColumn("UnitPrice")
.Build("selectQuery");
// Add the query to the collection and return the data source.
dataSource.Queries.Add(query);
dataSource.Fill();
return dataSource;
}
// ...
// Create a new data source.
SqlDataSource sqlDataSource = CreateSQLDataSource();
// Create a new report and assign a data source to it.
XtraReport report = new XtraReport();
report.DataSource = ds;
report.DataMember = "queryProducts";
// Create a detail band and add it to the report.
DetailBand detailBand = new DetailBand();
report.Bands.Add(detailBand);
// Create a table and add it to the detail band.
XRTable table = new XRTable();
detailBand.Controls.Add(table);
// Create a row with the product name and product price cells.
XRTableRow row = new XRTableRow();
table.Rows.Add(row);
XRTableCell productName = new XRTableCell();
XRTableCell productPrice = new XRTableCell();
row.Cells.Add(productName);
row.Cells.Add(productPrice);
// Bind table cells to data fields.
productName.ExpressionBindings.Add(new ExpressionBinding("BeforePrint", "Text", "[ProductName]"));
productPrice.ExpressionBindings.Add(new ExpressionBinding("BeforePrint", "Text", "[UnitPrice]"));