# Multi select

The **Multi Select** allows the user to perform a selection of zero to many entries in a droplist. Its functionality is essentially the same as the **Select** component, but the user can select more than one object.

{% hint style="info" %}
A full example setup on **Multi Select** is available in our [Showroom](https://showroom.appfarm.app/ui-components/multiselect). You may view a demo, as well as access the setup in Appfarm Create. If you do not have access, you may register on [Showroom Signup](https://showroom.appfarm.app/sign-up).
{% endhint %}

## Properties

### Selection Type

The Multi select component has two selection types - `Basic` and `Property`.

* `Property` allows the user to choose an entry from a list of options, and the option selected is stored in a [Many-cardinality](https://docs.appfarm.io/reference/data-model/object-class-properties) (multi-reference) property or variable (defined by the `Value` setting). \
  **Example**: A droplist where you select the `Tags`for a `Person`. The Value is `Person.Tags` (multi-reference). The options are the `Tags` data source.
* `Basic` allows the user to select one or many entries from a list of options, and when an entry is selected, that entry is marked as [selected](https://docs.appfarm.io/reference/platform-concepts/objects#object-selection) in the data source holding the options.\
  **Example**: A data source `Projects` holds all projects you have access to. When selecting two Projects in the list, those projects are marked as selected. This is useful when you have a UI that displays information about the selected Projects, and for example, if you have a `Tasks` data source that is filtered towards the selected Projects.

### Options

Select the Data Source that holds the options that the user can choose from.&#x20;

### Display Value

Select which **property** of the Data Source (selected as Option) that should be displayed for the options of the Multi Select.

### Filter

If you do not want all entries of the Data Source to be selectable, you may apply a filter here to limit the rows of the Multi Select.

### Conditional Filter

You may also choose to have a dynamic filter on the Data Source, that is applied given certain conditions.

### Autocomplete

If the list of options is long, you should consider checking this setting. It allows for searching the options of the Multi Select.

### Error

Select a value to assign an error state to the component.

### Event Handlers

Event Handlers can detect a specific event occurring in Appfarm Create and can link these events to actions. Three Event Handlers are available for the **Multi select** component:

**On Value Change**: This Event Handler will run an action when a change is detected in the data source bound to the component. For example, if the data input changes from false to true, or vice versa, a specific action can be performed.

**On Open**: Specify an action to run when the droplist is opened.

**On Close**: Specify an action to run when the droplist is closed.
