A ComboBox graphical element allows users to select items from a predefined list.
Requirements
This component is Portable. It runs both on Windows and on Web Pages hosted in any platform.
Configuration
- Go to Displays / Draw.
- On the Components Panel, select Interaction, then ComboBox.
- Click or drag-and-drop it on the Drawing area to use it.
- Double-click the component to open the configuration window.
Combo Box Settings | |
|---|---|
Field | Description |
LinkedValue | Specifies the variable or tag to which the ComboBox is bound. |
Binding | Sets the binding mode for the component. Options are: TwoWay: Updates the data source and UI interchangeably; OutputOnly: Allows data output without user input; InputOnly: Accepts user input without updating the data source. |
SelectedIndex | Specifies the index of the currently selected item in the ComboBox. |
Items Source | Determines the source of the items displayed in the ComboBox. Options are: Designer: Allows the ComboBox to display a list of simple text items separated by ';' semi-colon, configured in the designer. e.g: Item1;Item2;Item3;Item4 StringTag: Tag with ComboBox items separated by ';' semi-colon. Similar to the Designer, but instead of having the items configured in the Designer, it can be configured dinamically using a value of a tag Text datatype. ArrayTag: Allows the ComboBox to display items from an array. DataTable: Allows the ComboBox to display items from a collection of objects.. |
Is Editable | Allows users to type in the ComboBox to add new items or select existing ones when selected |
TagArray index starts at one | When mapping to ArrayTags, sets the index counting to start at one instead of zero when checked. |
Reload | Tag that triggers a reload of the items. Whenever the value of this tag changes, the ComboBox reads its Items Source again and rebuilds the list, with the display still open. See Reloading the Items below. |
DataTable Items Source
When using a DataTable as the Items Source, the value can be from a DatasetQuery, or a DatasetTable, a DataTable Tag, or an Array Tag of UserTypes.
When using Dataset Table or Queries, there is no needing to call the Select(), the ComboBox will call the Select() to the Table or Query when initializing.
In order to define which column from the Database will populate the ComboBox, there are 2 options:
- Using the DisplayMemberPath and SelectedValuePath
- Using the Element UId or First Column
DisplayMemberPath and SelectedValuePath
The DisplayMemberPath is the name of the Column in the source table, that will populate the ComboBox.
TheSelectedValuePath is the name of the Column in the source table, that will be assigned to the LinkedValue when the selection changes.
When both elements are defined, and the source table contains those columns, the system uses this configuration to populate the ComboBox. Otherwise it will use the UId of the element, or the
Element Uid or First Column
The UId is the element identification defined in the Properties SideBar.
If there is a column in that table that matches that Uid, the contents of that column, converted to string, is used to populate the ComboBox.
When that column is not found, the first column is used.
Reloading the Items
The ComboBox reads its Items Source when the display opens. To refresh the list while the display stays open, set the Reload field to a tag.
- Reload takes a tag, not a script method. Any change in the value of that tag reloads the list. The new value itself does not matter.
- Changing the Items Source alone does not refresh the list. The list is rebuilt only when the Reload tag changes.
- With the StringTag option, an empty source value clears the list. A value containing only spaces produces a single blank item.
- When the Binding is InputOnly, the Reload field has no effect.
Example
- Create a Text tag Items with the value
A1;A2;A3, and an Integer tag RefreshItems. - Set the ComboBox Items Source to StringTag, pointing to
Tag.Items, and set Reload toTag.RefreshItems. - At runtime, change Items to
B1;B2;B3;B4. The list still shows A1, A2, A3. - Change RefreshItems (for example, from 0 to 1). The list now shows B1, B2, B3, B4, without closing the display.
Runtime Execution
When users select an item from a combo box, the application updates to reflect the chosen option. This selection changes the displayed data or configuration settings according to the user's choice. The combo box helps users choose from predefined options, such as a machine type or report format.
In this section...
