Table of Contents

UI view behavior

This article outlines a list of configurable UI behaviors, which can be defined either globally for the entire application or per individual UI view.

To facilitate smoother migrations and avoid breaking changes, certain options have been added to allow rollback to behaviors from previous versions. Additionally, new behaviors can be introduced that may become the standard in future releases, giving you the flexibility to adopt them ahead of time.

Global configuration

To define a behavior globally, use the cluster configuration file by adding the desired settings under the UIDefaultBehavior section:

UIDefaultBehavior:
  InitSelectionOnLoad: false

Per UI view configuration

To configure a behavior for a specific UI view, set it in the Initialized event rule:

Behavior.InitSelectionOnLoad = false;

Behavior options

PersistValidationRuleMessagesOnLoad

Note

Available since 3.0.0

Controls whether the validation rule messages are persisted immediately on loaded items.

Default value: true

FlushPendingEventHandlersOnSave

Note

Available since 2.5.0

Controls whether the save waits for all pending event handlers (property changed, position changed) to complete before proceeding.

Default value: true

DatagridEllipsis

Note

Available since 2.3.0.

Controls whether text in datagrid cells is truncated with an ellipsis when it exceeds the cell's available width.

When enabled (true), the Ellipsis option defined at the UI view property level is applied. By default, the Ellipsis option is set to true for all properties.

When disabled (false), the Ellipsis option defined in UI view properties are ignored, and overflowing text will be cut off without displaying an ellipsis.

Default value: true

DatagridInfiniteScrolling

Note

Available since 1.19.0

Controls whether infinite scrolling is enabled by default for datagrids.

Default value: false

DatagridInputNumberType

Note

Available since 3.0.0

Defines the input number component used for numeric fields. Two modes are available:

  • default: Standard input number component.
  • calculable: Input number component with built-in calculation support.

Default value: default

FilterBarDisplayMode

Note

Available since 2.3.0.

Defines the default display mode of the filter bar. Two modes are available:

  • inputs: Displays input fields.
  • editable-chips: Displays editable chips.

When the editable-chips mode was introduced in version 2.2, the default filter bar behavior remained unchanged to prevent breaking changes. As a result, adopting the new mode required explicitly setting it in each UI template.

Starting with version 2.3.0, you can now configure the filter bar display mode globally, allowing for easier standardization across the application.

Default value: inputs

InitSelectionOnLoad

Note

Available since 1.21.5

Determines whether the default selection is initialized after data is loaded when opening a view.

Since version 1.21.0, the current item, which is the first item in most cases, is automatically selected by default after data loading.

Default value: true

LayoutOverflowFix

Note

Available since 2.5.0

Determines whether a fix is applied to prevent content overflow in layouts with fixed width, fixed height or the attributes layout:width="fill" or layout:height="fill".

Since version 2.5.0, enabling this option applies CSS rules that prevent content overflow when the content exceeds the dimensions of its containing vertical or horizontal layout.
This option is disabled by default for existing clusters to avoid UI breaking changes, as scrollbars might appear in areas where content previously overflowed by a few pixels, especially in pixel-perfect layouts.

In version 3.0, the option will be enabled by default for all clusters.

Default value: false for existing clusters, true for new clusters

RemoveCurrentWithNoSelection

Note

Available since 2.0.0.

Determines the behavior of the "Remove" button when no item is selected.

As of version 2.0.0, the "Remove" button only affects selected items. In mono-record mode, it will act on the current item if none is selected.

Default value: false