CalculatedField.DataMember Property

Specifies the data member of the calculated field.

Namespace: DevExpress.XtraReports.UI

Assembly: DevExpress.XtraReports.v18.1.dll

Syntax

public override string DataMember { get; set; }

Returns

Type Description
String

A String containing a calculated field's data member.

To allow a calculated field to get access to data fields available in a data source, specify the CalculatedField.DataSource and DataMember properties. Following that, you can refer to these data fields from within the calculated field's CalculatedField.Expression.

To learn more, see Calculated Fields Overview.

Examples

This example demonstrates how a calculated field can be created at runtime and bound to a control's XRControl.Text property.

using System;
using System.Windows.Forms;
using DevExpress.XtraReports.UI;
using DevExpress.XtraReports.Configuration;
// ...

private void button1_Click(object sender, EventArgs e) {

    // 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);

    // 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("xrlabel2", true).DataBindings.Add("Text", null, "Order Details.myField");

    // Bind a label's Text property to the calculated field 
    // depending on the report's data binding mode.
    if (Settings.Default.UserDesignerOptions.DataBindingMode == DataBindingMode.Bindings)
        report.FindControl("xrlabel3", true).DataBindings.Add("Text", null, "Products.myField", "{0:c2}");
    else report.FindControl("xrlabel3", true).ExpressionBindings.Add(
        new ExpressionBinding("BeforePrint", "Text", "FormatString('{0:c2}', [myField])"));

    // Display the report.
    ReportPrintTool printTool = new ReportPrintTool(report);
    printTool.ShowPreviewDialog();
}

See Also