Combo Box

The Combo Box control lists a set of values for a user to choose from in a drop down box. You determine the list of possible values by either manually entering the values for the control or providing a global list variable for the Value List attribute.

Example Combo Box control

Example Combo Box with options displayed

The benefits of a Combo Box control are listed below.

  • The user sees a complete list of values to choose from on the same form as the control.
  • You can control both the labels users see for each option (the Display List attribute) and the actual value each option has when stored in the database (the Value List attribute).

The costs of a Combo Box control are listed below.

  • The more options there are to display, the more system resources are required to display them.
  • If the list of values comes from a global list, then the server must send the entire list to the client each time the form is displayed. The more list items there are, the more network bandwidth it takes to transmit the list to the client. Furthermore, the more users there are who can access the global list, the more often the server has to transmit the list to clients.
  • If the list of values comes from a global list, then the server must periodically rebuild the list of values. The more items there are in the list, the more system resources it takes to rebuild the list.
  • If the list of values comes from a hard-coded list, then each list item increases the size of the form. The larger a form is, the longer it takes for the client to initially display it.

The more options there are to display, the more costly a Combo Box is to your system's performance. There is no set number of values that determines when a Combo Box is less efficient than a Comfill, but in general a Combo Box is best used in the following circumstances.

  • There are few enough options to display that the control can display them all without the user needing to scroll down to see more options.
  • The list of options either does not change at all or changes infrequently.

If you have a lot of options to display, consider using a Comfill control instead where you can control how many options are displayed per page. Also, if you expect to frequently add or change the options available to the control, you may want to use a Comfill control linked to the data of another field. Using a linked Comfill control allows you to add or update the options as records and guarantees your users always see the most current list of options.

Related concepts

Selecting values from options in a control
Comfill