Back to Devexpress

GetValueEventArgs.Report Property

xtrareports-devexpress-dot-xtrareports-dot-ui-dot-getvalueeventargs.md

latest4.3 KB
Original Source

GetValueEventArgs.Report Property

Provides access to a report which owns the calculated field, for which the CalculatedField.GetValue event was raised.

Namespace : DevExpress.XtraReports.UI

Assembly : DevExpress.XtraReports.v25.2.dll

NuGet Package : DevExpress.Reporting.Core

Declaration

csharp
public XtraReport Report { get; }
vb
Public ReadOnly Property Report As XtraReport

Property Value

TypeDescription
XtraReport

An XtraReport class descendant which represents the owner report.

|

Remarks

Use the Report property to get access to a report and any of its contents required for calculating a custom value for a calculated field.

Example

The report created in this example is bound to the “Orders” table of the sample Northwind database.

To sort records by days of the week at runtime, do the following.

  1. Create a calculated field with the CalculatedField.FieldType property set to String. Add a GroupHeader band, and add a grouping criteria (with the GroupField.FieldName property set to the created calculated field) to its GroupHeaderBand.GroupFields collection.
  2. Then, drop the calculated field from the Field List onto the GroupHeader1 band for the XRLabel control (named hdrLabel ) bound to the field to be automatically created.
  3. Handle the calculated field’s CalculatedField.GetValue and the hdrLabel ‘s XRControl.BeforePrint event handlers in the following way.
csharp
using System;
using System.Data;
using System.Windows.Forms;
using DevExpress.XtraReports.UI;
// ...

private void calculatedField1_GetValue(object sender, GetValueEventArgs e) {
    object columnValue = e.GetColumnValue("OrderDate");
    e.Value = (int)((DateTime)columnValue).DayOfWeek;
}

private void hdrLabel_BeforePrint(object sender, System.ComponentModel.EventArgs e) {
    hdrLabel.Text = ((DayOfWeek)this.GetCurrentColumnValue(this.calculatedField1.Name)).ToString();
}
vb
Imports System
Imports System.Data
Imports System.Windows.Forms
Imports DevExpress.XtraReports.UI
' ...

Private Sub calculatedField1_GetValue(ByVal sender As Object, _ 
ByVal e As GetValueEventArgs) Handles calculatedField1.GetValue
    Dim columnValue As Object = e.GetColumnValue("OrderDate")
    e.Value = CInt(Fix((CDate(columnValue)).DayOfWeek))
End Sub

Private Sub hdrLabel_BeforePrint(ByVal sender As Object, _ 
ByVal e As System.ComponentModel.EventArgs) Handles hdrLabel.BeforePrint
    hdrLabel.Text = (CType(Me.GetCurrentColumnValue(Me.calculatedField1.Name), _ 
    DayOfWeek)).ToString()
End Sub

See Also

GetValue

GetValueEventArgs Class

GetValueEventArgs Members

DevExpress.XtraReports.UI Namespace