DataControlBase.AllowLiveDataShaping Property

Gets or sets whether the GridControl recalculates data shaping operations (for example, data sort and filter, summary calculation, and scrollbar annotation display) when you modify a data source outside the grid.

Namespace: DevExpress.Xpf.Grid

Assembly: DevExpress.Xpf.Grid.v21.1.Core.dll

Declaration

public bool? AllowLiveDataShaping { get; set; }

Property Value

Type Description
Nullable<Boolean>

true to recalculate data shaping operations when you modify a data source outside the grid; otherwise, false.

Remarks

DevExpress GridControl and TreeListControl handle massive data source updates in the same way as the standard DataGrid. Your data classes should implement the INotifyPropertyChanged interface.

The GridControl handles updates only from rows and cells that are visible onscreen. To improve performance, the GridControl does not recalculate data shaping operations as they can take considerable time to complete. If you need to process these operations, set the AllowLiveDataShaping property to true.

Data Shaping Operation Support for Different Data Classes

The following table contains information on support for data shaping operations updates:

AllowLiveDataShaping = null (default) AllowLiveDataShaping = false AllowLiveDataShaping = true
IList no no yes
IBindingList (BindingList, DataView) yes no yes
INotifyCollectionChanged (ObservableCollection) no no yes
ICollectionView no no yes[1]
Server Mode no no no

If a data class implements the IBindingList interface, the class processes data shaping operation updates. You can set the AllowLiveDataShaping property to false to disable these updates.

Use the ColumnBase.FieldName property to bind a column to a data field. If you use the ColumnBase.Binding property, the AllowLiveDataShaping property value does not affect data updates.

If your data source class implements the ICollectionView, call the ICollectionView.Refresh method to process data shaping operation updates. If you want to use the AllowLiveDataShaping property, set the AllowCollectionView to false.

If you bind the GridControl to the RealTimeSource class, this class processes data updates, and the AllowLiveDataShaping property has no effect.

Refer to the following topic for information on how to optimize data updates within the GridControl: Frequent Data Updates.

Footnotes
  1. Only if AllowCollectionView is false.

See Also