Back to Devexpress

XtraReport.CalculatedFields Property

xtrareports-devexpress-dot-xtrareports-dot-ui-dot-xtrareport-e81771af.md

latest4.1 KB
Original Source

XtraReport.CalculatedFields Property

Provides access to a report’s collection of calculated fields.

Namespace : DevExpress.XtraReports.UI

Assembly : DevExpress.XtraReports.v25.2.dll

NuGet Package : DevExpress.Reporting.Core

Declaration

csharp
[SRCategory(ReportStringId.CatData)]
public CalculatedFieldCollection CalculatedFields { get; }
vb
<SRCategory(ReportStringId.CatData)>
Public ReadOnly Property CalculatedFields As CalculatedFieldCollection

Property Value

TypeDescription
CalculatedFieldCollection

A CalculatedFieldCollection object.

|

Remarks

For general information, see Calculated Fields Overview.

For a step-by-step tutorial, see Using Calculated Fields.

Example

This example demonstrates how to create a calculated field at runtime, and bind the field to the report control’s Text property.

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

// Create a calculated field 
// and add it to the report's collection.
CalculatedField calcField = new CalculatedField();
report.CalculatedFields.Add(calcField);

// Specify the calculated field's properties.
calcField.DataSource = report.DataSource;
calcField.DataMember = report.DataMember;
calcField.FieldType = FieldType.Double;
calcField.DisplayName = "Calculated Field";
calcField.Name = "myField";
calcField.Expression = "[UnitPrice] * [UnitsInStock]";

// Bind the label's Text property to the calculated field.
report.FindControl("xrlabel3", true).ExpressionBindings
            .Add(new ExpressionBinding() {
                EventName = "BeforePrint",
                PropertyName = "Text",
                Expression = "FormatString('{0:c2}', [myField])"
            });
vb
Imports DevExpress.XtraReports.UI
Imports DevExpress.XtraReports.Configuration
' ...
' Create a report.
Dim report As New XtraReport1()

' Create a calculated field 
' and add it to the report's collection.
Dim calcField As New CalculatedField()
report.CalculatedFields.Add(calcField)

' Define the calculated field's properties.
calcField.DataSource = report.DataSource
calcField.DataMember = report.DataMember
calcField.FieldType = FieldType.Double
calcField.DisplayName = "Calculated Field"
calcField.Name = "myField"
calcField.Expression = "[UnitPrice] * [UnitsInStock]"

' Bind a label's Text property to the calculated field.
report.FindControl("xrlabel3", True).ExpressionBindings.Add(New ExpressionBinding("BeforePrint", "Text", "FormatString('{0:c2}', [myField])"))

See Also

Calculated Fields

Use Calculated Fields

XtraReport Class

XtraReport Members

DevExpress.XtraReports.UI Namespace