• Getting Started
  • Components
    • Barcodes
    • Buttons
    • Chartsupdated
    • Conversational UIupdated
    • Data Query
    • Date Inputsupdated
    • Date Math
    • Dialogs
    • Drawing
    • Dropdownsupdated
    • Editor
    • Excel Export
    • File Saver
    • Filter
    • Gantt
    • Gauges
    • Gridupdated
    • Icons
    • Indicators
    • Inputsupdated
    • Labels
    • Layout
    • ListBox
    • ListView
    • Map
    • Menus
    • Navigation
    • Notification
    • Pager
    • PDF Export
    • PDFViewer
    • PivotGridupdated
    • Popup
    • ProgressBars
    • Ripple
    • Schedulerupdated
    • ScrollView
    • Sortable
    • Spreadsheetupdated
    • ToolBar
    • Tooltips
    • TreeList
    • TreeView
    • Typography
    • Uploads
    • Utilities
  • Styling & Themes
  • Common Features
  • Project Setup
  • Knowledge Base
  • Sample Applications
  • FAQ
  • Troubleshooting
  • Updates
  • Changelogs
New to Kendo UI for Angular? Start a free 30-day trial

ComboBoxComponent

Represents the Kendo UI ComboBox component for Angular.

@Component({
selector: 'my-app',
template: `
 <kendo-combobox [data]="listItems">
 </kendo-combobox>
`
})
class AppComponent {
  public listItems: Array<string> = ["Item 1", "Item 2", "Item 3", "Item 4"];
}

Selector

kendo-combobox

Export Name

Accessible in templates as #kendoComboBoxInstance="kendoComboBox"

Inputs

NameTypeDefaultDescription

adaptiveMode

AdaptiveMode

Enables or disables the adaptive mode. By default the adaptive rendering is disabled.

allowCustom

boolean

Specifies whether the ComboBox allows user-defined values that are not present in the dataset (more information and examples). Defaults to false.

The feature is not available when using adaptive mode.

clearButton

boolean

If set to true, renders a button on hovering over the component. Clicking this button resets the value of the component to undefined and triggers the change event.

data

any

Sets the data of the ComboBox.

The data has to be provided in an array-like list.

disabled

boolean

Sets the disabled state of the component. To learn how to disable the component in reactive forms, refer to the articles on ComboBox Forms Support and MultiColumnComboBox Forms Support.

fillMode

DropDownFillMode

Sets the fillMode of the component.

The possible values are:

  • flat
  • solid (default)
  • outline
  • none

filterable

boolean

Enables the filtering functionality. If set to true, the component emits the filterChange event.

inputAttributes

{[key: string]: string}

Sets the HTML attributes of the inner focusable input element. Attributes which are essential for certain component functionalities cannot be changed.

itemDisabled

ItemDisabledFn

Defines a Boolean function that is executed for each data item in the component (see examples). Determines whether the item will be disabled.

listHeight

number

Sets the height of the options list in the popup. By default, listHeight is 200px.

The listHeight property affects only the list of options and not the whole popup container. To set the height of the popup container, use popupSettings.height.

When using adaptiveMode and the screen size is small or medium the listHeight property is set to null.

loading

boolean

Sets and gets the loading state of the ComboBox.

placeholder

string

The hint that is displayed when the component is empty.

popupSettings

PopupSettings

Configures the popup of the ComboBox.

The available options are:

  • animate: Boolean—Controls the popup animation. By default, the open and close animations are enabled.
  • width: Number | String—Sets the width of the popup container. By default, the width of the host element is used. If set to auto, the component automatically adjusts the width of the popup and no item labels are wrapped. The auto mode is not supported when virtual scrolling is enabled.
  • height: Number—Sets the height of the popup container.
  • popupClass: String—Specifies a list of CSS classes that are used to style the popup.
  • appendTo: "root" | "component" | ViewContainerRef—Specifies the component to which the popup will be appended.

readonly

boolean

false

Sets the read-only state of the component.

rounded

DropDownRounded

Sets the border radius of the component.

The possible values are:

  • small
  • medium (default)
  • large
  • full
  • none

showStickyHeader

boolean

Shows or hides the current group sticky header when using grouped data. By default the sticky header is displayed (see example).

size

DropDownSize

Sets the size of the component.

The possible values are:

  • small
  • medium (default)
  • large
  • none

subtitle

string

Sets the subtitle of the ActionSheet that is rendered instead of the Popup when using small screen devices. By default the ActionSheet subtitle uses the text provided for the placeholder of the AutoComplete.

suggest

boolean

Enables the auto-completion of the text based on the first data item.

tabindex

number

Specifies the tabindex of the component.

textField

string

Sets the data item field that represents the item text. If the data contains only primitive values, do not define it.

The textField property can be set to point to a nested property value - e.g. category.name.

title

string

Sets the title of the ActionSheet that is rendered instead of the Popup when using small screen devices. By default the ActionSheet title uses the text provided for the label of the AutoComplete.

value

any

Sets the value of the ComboBox. It can either be of the primitive (string, numbers) or of the complex (objects) type. To define the type, use the valuePrimitive option.

All selected values which are not present in the dataset are considered custom values. When the Enter key is pressed or the component loses focus, custom values get dismissed unless allowCustom is set to true.

valueField

string

Sets the data item field that represents the item value. If the data contains only primitive values, do not define it.

The valueField property can be set to point to a nested property value - e.g. category.id.

valueNormalizer

(text: Observable<string>) => Observable<any>

A user-defined callback which returns normalized custom values. Typically used when the data items are different from type string.

import { map } from 'rxjs/operators';

@Component({
selector: 'my-app',
template: `
  <kendo-combobox
      [allowCustom]="true"
      [data]="listItems"
      textField="text"
      valueField="value"
      [valueNormalizer]="valueNormalizer"
      (valueChange)="onValueChange($event)"
  >
  </kendo-combobox>
`
})

class AppComponent {
  public listItems: Array<{ text: string, value: number }> = [
      { text: "Small", value: 1 },
      { text: "Medium", value: 2 },
      { text: "Large", value: 3 }
  ];

  public onValueChange(value) {
      console.log("valueChange : ", value);
  }

  public valueNormalizer = (text$: Observable<string>) => text$.pipe(map((text: string) => {
     return { ProductID: null, ProductName: text };
  }));

}

valuePrimitive

boolean

Specifies the type of the selected value. If set to true, the selected value has to be of the primitive type (more information and example).

virtual

boolean | VirtualizationSettings

Enables the virtualization functionality.

Fields

NameTypeDefaultDescription

isOpen

boolean

Returns the current open state. Returns true if the popup or actionSheet is open.

Events

NameTypeDescription

close

EventEmitter<PreventableEvent>

Fires each time the popup is about to close. This event is preventable. If you cancel it, the popup will remain open.

closed

EventEmitter<any>

Fires after the popup has been closed.

filterChange

EventEmitter<any>

Fires each time the user types in the input field. You can filter the source based on the passed filtration value (see example).

inputBlur

EventEmitter<any>

Fires each time the input element gets blurred.

inputFocus

EventEmitter<any>

Fires each time the user focuses the input element.

blur

EventEmitter<any>

Fires each time the ComboBox gets blurred.

focus

EventEmitter<any>

Fires each time the user focuses the ComboBox.

open

EventEmitter<PreventableEvent>

Fires each time the popup is about to open. This event is preventable. If you cancel it, the popup will remain closed.

opened

EventEmitter<any>

Fires after the popup has been opened.

selectionChange

EventEmitter<any>

Fires each time an item selection is changed (see example).

valueChange

EventEmitter<any>

Fires each time the value is changed— when the component is blurred or the value is cleared through the Clear button (see example). When the value of the component is programmatically changed to ngModel or formControl through its API or form binding, the valueChange event is not triggered because it might cause a mix-up with the built-in valueChange mechanisms of the ngModel or formControl bindings.

Methods

blur

Blurs the ComboBox.

focus

Focuses the ComboBox.

focusItemAt

Focuses a specific item of the ComboBox based on a provided index. If null or invalid index is provided the focus will be removed.

Parameters

index

number

reset

Resets the value of the ComboBox. If you use the reset method to clear the value of the component, the model will not update automatically and the selectionChange and valueChange events will not be fired.

toggle

Toggles the visibility of the popup or actionSheet. If you use the toggle method to open or close the popup or actionSheet, the open and close events will not be fired.

Parameters

open?

boolean

The state of the popup.