Back to Devexpress

PrintingSystemBase.EditingFieldChanged Event

corelibraries-devexpress-dot-xtraprinting-dot-printingsystembase-196168d0.md

latest6.0 KB
Original Source

PrintingSystemBase.EditingFieldChanged Event

Occurs each time a value of an edit field changes.

Namespace : DevExpress.XtraPrinting

Assembly : DevExpress.Printing.v25.2.Core.dll

NuGet Package : DevExpress.Printing.Core

Declaration

csharp
public event EventHandler<EditingFieldEventArgs> EditingFieldChanged
vb
Public Event EditingFieldChanged As EventHandler(Of EditingFieldEventArgs)

Event Data

The EditingFieldChanged event's data class is EditingFieldEventArgs. The following properties provide information specific to this event:

PropertyDescription
EditingFieldGets an editing field whose value has been changed.

Remarks

Use the following properties to access an edit field value:

Each time the value of the current field changes, the EditingFieldChanged event occurs. This allows you to react to this action (to validate the input data or format the edited value). The code snippet below shows how to apply the same currency format to an edit field value regardless of whether a control that is an edit field is unbound or bound to data.

csharp
using DevExpress.XtraPrinting;
// ...

private void XtraReport1_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) {
    PrintingSystem.EditingFieldChanged += PrintingSystem_EditingFieldChanged;
}

void PrintingSystem_EditingFieldChanged(object sender, EditingFieldEventArgs e) {
    if (e.EditingField.Brick.TextValue != null) {
        e.EditingField.Brick.TextValueFormatString = "{0:c2}";
        e.EditingField.Brick.Text = string.Format(e.EditingField.Brick.TextValueFormatString, e.EditingField.Brick.TextValue);
    }
    else {
        e.EditingField.Brick.Text = string.Format("{0:c2}", System.Convert.ToDouble(e.EditingField.Brick.Text));
    }
}
vb
Imports DevExpress.XtraPrinting
' ...

Private Sub XtraReport1_BeforePrint(sender As Object, e As System.Drawing.Printing.PrintEventArgs)
    AddHandler PrintingSystem.EditingFieldChanged, AddressOf PrintingSystem_EditingFieldChanged
End Sub

Private Sub PrintingSystem_EditingFieldChanged(sender As Object, e As EditingFieldEventArgs)
    If e.EditingField.Brick.TextValue IsNot Nothing Then
        e.EditingField.Brick.TextValueFormatString = "{0:c2}"
        e.EditingField.Brick.Text = String.Format(e.EditingField.Brick.TextValueFormatString, e.EditingField.Brick.TextValue)
    Else
        e.EditingField.Brick.Text = String.Format("{0:c2}", System.Convert.ToDouble(e.EditingField.Brick.Text))
    End If
End Sub

For more information, review the following help topic: Edit Content in Print Preview.

Tip

Handle the EditingFieldChanged client-side event in an ASP.NET Web Forms application or use the EditingFieldChanged method in an ASP.NET Core reporting application.

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the EditingFieldChanged event.

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.

wpf-reporting-use-custom-controls-for-editing-report-content-in-print-preview/CS/XtraReport1.cs#L15

csharp
private void XtraReport1_BeforePrint(object sender, CancelEventArgs e) {
    PrintingSystem.EditingFieldChanged += new EventHandler<DevExpress.XtraPrinting.EditingFieldEventArgs>(PrintingSystem_EditingFieldChanged);
}

wpf-reporting-use-custom-controls-for-editing-report-content-in-print-preview/VB/XtraReport1.vb#L17

vb
Private Sub XtraReport1_BeforePrint(ByVal sender As Object, ByVal e As CancelEventArgs) Handles Me.BeforePrint
    AddHandler PrintingSystem.EditingFieldChanged, AddressOf PrintingSystem_EditingFieldChanged
End Sub

See Also

EditingFields

Edit Content in Print Preview

PrintingSystemBase Class

PrintingSystemBase Members

DevExpress.XtraPrinting Namespace