Skip to main content
.NET 6.0+

ImmediatePostDataAttribute Class

An attribute you can apply to business class properties. This attribute indicates that the Property Editor’s control value should be passed to the property of a bound object as soon as possible when a user changes the editor’s value.

Namespace: DevExpress.Persistent.Base

Assembly: DevExpress.ExpressApp.v23.2.dll

NuGet Package: DevExpress.ExpressApp

Declaration

[AttributeUsage(AttributeTargets.Property, Inherited = true, AllowMultiple = false)]
public sealed class ImmediatePostDataAttribute :
    ModelExportedValueAttribute

Remarks

The code snippet below demonstrates how to apply the ImmediatePostData attribute to a business class property in code. For instance, this property allows you to force an update of other values that are calculated based on the current property.

using DevExpress.Persistent.Base;
// ...
[ImmediatePostData]
public double Rate {
    get {
        //...
    }
    set {
        //...           
    }
}

Dependence on the Application Type

When a user types in a Property Editor that corresponds to a property with the ImmediatePostData attribute applied, the application’s behavior depends on the application type:

ASP.NET Core Blazor
The property value is updated while a user types.
WinForms
The property value is updated while a user types.
ASP.NET WebForms
The property value is updated after the Property Editor loses focus.

Impact on Other Properties

When you apply the ImmediatePostData attribute to a business class property, you automatically set the Application Model‘s BOModel | <Class> | OwnMembers | <Member> | ImmediatePostData default property value to true.

ImmediatePostData_ApplicationModel_BOModel

Note that you can set or change this property’s value using the Model Editor as shown in the Make a Property Calculable topic.

Any changes to the BOModel | <Class> | OwnMembers | <Member> | ImmediatePostData property value affect the default value of the same property in the following nodes:

  • Views | <DetailView> | Items | <PropertyEditor>,
  • Views | <ListView> | Columns | <Column>.

You can modify the property’s value in the nodes above to, for example, disable ImmediatePostData for certain Views.

ImmediatePostData_ApplicationModel_Views

These nodes’ ImmediatePostData properties specify the default values for the corresponding PropertyEditor.ImmediatePostData properties.

The diagram below demonstrates different levels where the ImmediatePostData setting can be applied. Higher levels determine default values for lower levels.

ImmediatePostData_Class

Limitations

  • In ASP.NET Web Forms applications, the ImmediatePostData attribute raises a callback that posts all editor values to business objects and can re-render all editors on a page. It may cause unexpected behavior in complex scenarios (for example, in editable List Views). You can always invoke the Model Editor for the ASP.NET Web Forms project and disable the Views | <ListView> | Columns | <Column> | ImmediatePostData property for a specific column.
  • In Batch edit mode, ImmediatePostData affects properties of the current row only.

Inheritance

Object
Attribute
DevExpress.Persistent.Base.ModelExportedValueAttribute
ImmediatePostDataAttribute
See Also