### Hierarchy

- AtomControl
  - AtomItemsControl
    - AtomListBox
    - AtomComboBox
    - AtomViewPager

### Implements

- IAtomComponent<IAtomElement>
- INotifyPropertyChanged

## Index

### Constructors

- constructor

### Properties

- allowMultipleSelection
- app
- autoScrollToSelection
- defaultControlStyle
- element
- itemTemplate
- labelPath
- mAllowSelectFirst
- pendingInits
- sort
- uiVirtualize
- valuePath
- valueSeparator
- version

### Accessors

- allowSelectFirst
- controlStyle
- data
- filter
- items
- itemsPresenter
- localViewModel
- parent
- selectAll
- selectedIndex
- selectedItem
- selectedItems
- theme
- value
- viewModel

### Methods

- append
- atomParent
- beginEdit
- bind
- bindEvent
- bringIntoView
- bringSelectionIntoView
- create
- createChild
- dispose
- disposeChildren
- hasItems
- hasProperty
- invalidate
- invalidateItems
- isSelected
- onCollectionChanged
- onCollectionChangedInternal
- onPropertyChanged
- onScroll
- onSelectedItemsChanged
- onUpdateSize
- onUpdateUI
- onVirtualCollectionChanged
- postVirtualCollectionChanged
- preCreate
- registerDisposable
- removeAllChildren
- resetVirtualContainer
- resolve
- runAfterInit
- setElementClass
- setElementValue
- setLocalValue
- setPrimitiveValue
- toggleSelection
- unbind
- unbindEvent
- updateSelectionBindings
- updateSize
- validateScroller

## Constructors

### constructor

- new AtomItemsControl(app: App, e?: HTMLElement): AtomItemsControl

- Inherited from AtomControl.constructor

  Overrides AtomComponent.constructor

  - Defined in web/controls/AtomControl.ts:111

  #### Parameters

  - ##### app: App

  - ##### Optional e: HTMLElement

  #### Returns AtomItemsControl

## Properties

### allowMultipleSelection

allowMultipleSelection: boolean = false

- Defined in web/controls/AtomItemsControl.ts:15

### app

app: App

Implementation of IAtomComponent.app

Inherited from AtomComponent.app

- Defined in core/AtomComponent.ts:122

### autoScrollToSelection

autoScrollToSelection: any = false

- Defined in web/controls/AtomItemsControl.ts:29

### defaultControlStyle

defaultControlStyle: any

Inherited from AtomControl.defaultControlStyle

- Defined in web/controls/AtomControl.ts:34

### element

element: HTMLElement

Implementation of IAtomComponent.element

Inherited from AtomComponent.element

- Defined in core/AtomComponent.ts:123

### itemTemplate

itemTemplate: IClassOf<AtomControl>

- Defined in web/controls/AtomItemsControl.ts:24

### labelPath

labelPath: string = "label"

- Defined in web/controls/AtomItemsControl.ts:21

### mAllowSelectFirst

mAllowSelectFirst: boolean = false

- Defined in web/controls/AtomItemsControl.ts:12

### Protected pendingInits

pendingInits: Array<function>

Inherited from AtomComponent.pendingInits

- Defined in core/AtomComponent.ts:43

### sort

sort: string | function = null

- Defined in web/controls/AtomItemsControl.ts:31

### uiVirtualize

uiVirtualize: any = false

- Defined in web/controls/AtomItemsControl.ts:35

### valuePath

valuePath: string = "value"

- Defined in web/controls/AtomItemsControl.ts:18

### valueSeparator

valueSeparator: string = ", "

- Defined in web/controls/AtomItemsControl.ts:33

### version

version: number = 1

- Defined in web/controls/AtomItemsControl.ts:27

## Accessors

### allowSelectFirst

- set allowSelectFirst(b: any): void

- - Defined in web/controls/AtomItemsControl.ts:890

  #### Parameters

  - ##### b: any

  #### Returns void

### controlStyle

- get controlStyle(): any
- set controlStyle(v: any): void

- Inherited from AtomControl.controlStyle

  - Defined in web/controls/AtomControl.ts:37

  #### Returns any

- Inherited from AtomControl.controlStyle

  - Defined in web/controls/AtomControl.ts:73

  #### Parameters

  - ##### v: any

  #### Returns void

### data

- get data(): any
- set data(v: any): void

- Inherited from AtomComponent.data

  - Defined in core/AtomComponent.ts:52

  #### Returns any

- Inherited from AtomComponent.data

  - Defined in core/AtomComponent.ts:63

  #### Parameters

  - ##### v: any

  #### Returns void

### filter

- set filter(f: any): void

- - Defined in web/controls/AtomItemsControl.ts:895

  #### Parameters

  - ##### f: any

  #### Returns void

### items

- get items(): any[]
- set items(v: any[]): void

- - Defined in web/controls/AtomItemsControl.ts:171

  #### Returns any[]

- - Defined in web/controls/AtomItemsControl.ts:175

  #### Parameters

  - ##### v: any[]

  #### Returns void

### itemsPresenter

- get itemsPresenter(): HTMLElement
- set itemsPresenter(v: HTMLElement): void

- - Defined in web/controls/AtomItemsControl.ts:99

  #### Returns HTMLElement

- - Defined in web/controls/AtomItemsControl.ts:103

  #### Parameters

  - ##### v: HTMLElement

  #### Returns void

### localViewModel

- get localViewModel(): any
- set localViewModel(v: any): void

- Inherited from AtomComponent.localViewModel

  - Defined in core/AtomComponent.ts:90

  #### Returns any

- Inherited from AtomComponent.localViewModel

  - Defined in core/AtomComponent.ts:101

  #### Parameters

  - ##### v: any

  #### Returns void

### parent

- get parent(): AtomControl

- Inherited from AtomControl.parent

  Overrides AtomComponent.parent

  - Defined in web/controls/AtomControl.ts:105

  Gets Parent AtomControl of this control.

  #### Returns AtomControl

### selectAll

- set selectAll(v: any): void

- - Defined in web/controls/AtomItemsControl.ts:274

  #### Parameters

  - ##### v: any

  #### Returns void

### selectedIndex

- get selectedIndex(): number
- set selectedIndex(n: number): void

- - Defined in web/controls/AtomItemsControl.ts:227

  #### Returns number

- - Defined in web/controls/AtomItemsControl.ts:235

  #### Parameters

  - ##### n: number

  #### Returns void

### selectedItem

- get selectedItem(): any
- set selectedItem(value: any): void

- - Defined in web/controls/AtomItemsControl.ts:192

  #### Returns any

- - Defined in web/controls/AtomItemsControl.ts:199

  #### Parameters

  - ##### value: any

  #### Returns void

### selectedItems

- get selectedItems(): any[]
- set selectedItems(v: any[]): void

- - Defined in web/controls/AtomItemsControl.ts:209

  #### Returns any[]

- - Defined in web/controls/AtomItemsControl.ts:213

  #### Parameters

  - ##### v: any[]

  #### Returns void

### theme

- get theme(): AtomStyleSheet
- set theme(v: AtomStyleSheet): void

- Inherited from AtomControl.theme

  - Defined in web/controls/AtomControl.ts:92

  Represents associated AtomStyleSheet with this visual hierarchy. AtomStyleSheet is inherited by default.

  #### Returns AtomStyleSheet

- Inherited from AtomControl.theme

  - Defined in web/controls/AtomControl.ts:97

  Represents associated AtomStyleSheet with this visual hierarchy. AtomStyleSheet is inherited by default.

  #### Parameters

  - ##### v: AtomStyleSheet

  #### Returns void

### value

- get value(): any
- set value(v: any): void

- - Defined in web/controls/AtomItemsControl.ts:108

  #### Returns any

- - Defined in web/controls/AtomItemsControl.ts:137

  #### Parameters

  - ##### v: any

  #### Returns void

### viewModel

- get viewModel(): any
- set viewModel(v: any): void

- Inherited from AtomComponent.viewModel

  - Defined in core/AtomComponent.ts:69

  #### Returns any

- Inherited from AtomComponent.viewModel

  - Defined in core/AtomComponent.ts:80

  #### Parameters

  - ##### v: any

  #### Returns void

## Methods

### append

- append(element: AtomControl | HTMLElement | Text): AtomControl

- Inherited from AtomControl.append

  Overrides AtomComponent.append

  - Defined in web/controls/AtomControl.ts:138

  #### Parameters

  - ##### element: AtomControl | HTMLElement | Text

  #### Returns AtomControl

### atomParent

- atomParent(e: HTMLElement): AtomControl

- Inherited from AtomControl.atomParent

  Overrides AtomComponent.atomParent

  - Defined in web/controls/AtomControl.ts:127

  #### Parameters

  - ##### e: HTMLElement

  #### Returns AtomControl

### beginEdit

- beginEdit(): IDisposable

- Inherited from AtomComponent.beginEdit

  - Defined in core/AtomComponent.ts:368

  #### Returns IDisposable

### bind

- bind(element: HTMLElement, name: string, path: PathList[], twoWays?: boolean | string[], valueFunc?: function, source?: any): IDisposable

- Inherited from AtomComponent.bind

  - Defined in core/AtomComponent.ts:139

  #### Parameters

  - ##### element: HTMLElement

  - ##### name: string

  - ##### path: PathList[]

  - ##### Optional twoWays: boolean | string[]

  - ##### Optional valueFunc: function

    - - (...v: any[]): any

      - #### Parameters

        - ##### Rest ...v: any[]

        #### Returns any

  - ##### Optional source: any

  #### Returns IDisposable

### bindEvent

- bindEvent(element: HTMLElement, name?: string, method?: EventListenerOrEventListenerObject, key?: string): IDisposable

- Inherited from AtomComponent.bindEvent

  - Defined in core/AtomComponent.ts:177

  #### Parameters

  - ##### element: HTMLElement

  - ##### Optional name: string

  - ##### Optional method: EventListenerOrEventListenerObject

  - ##### Optional key: string

  #### Returns IDisposable

### bringIntoView

- bringIntoView(data: any): void

- - Defined in web/controls/AtomItemsControl.ts:569

  #### Parameters

  - ##### data: any

  #### Returns void

### bringSelectionIntoView

- bringSelectionIntoView(): void

- - Defined in web/controls/AtomItemsControl.ts:583

  #### Returns void

### Protected create

- create(): void

- Inherited from AtomComponent.create

  - Defined in core/AtomComponent.ts:423

  #### Returns void

### Protected createChild

- createChild(df: DocumentFragment, data: any): AtomControl

- - Defined in web/controls/AtomItemsControl.ts:1000

  #### Parameters

  - ##### df: DocumentFragment

  - ##### data: any

  #### Returns AtomControl

### dispose

- dispose(e?: HTMLElement): void

- Overrides AtomComponent.dispose

  - Defined in web/controls/AtomItemsControl.ts:246

  #### Parameters

  - ##### Optional e: HTMLElement

  #### Returns void

### Protected disposeChildren

- disposeChildren(e: HTMLElement): void

- - Defined in web/controls/AtomItemsControl.ts:1018

  #### Parameters

  - ##### e: HTMLElement

  #### Returns void

### hasItems

- hasItems(): boolean

- - Defined in web/controls/AtomItemsControl.ts:653

  #### Returns boolean

### hasProperty

- hasProperty(name: string): boolean

- Implementation of IAtomComponent.hasProperty

  Inherited from AtomComponent.hasProperty

  - Defined in core/AtomComponent.ts:236

  #### Parameters

  - ##### name: string

  #### Returns boolean

### invalidate

- invalidate(): void

- Inherited from AtomComponent.invalidate

  - Defined in core/AtomComponent.ts:388

  #### Returns void

### invalidateItems

- invalidateItems(): void

- - Defined in web/controls/AtomItemsControl.ts:657

  #### Returns void

### isSelected

- isSelected(item: any): boolean

- - Defined in web/controls/AtomItemsControl.ts:558

  #### Parameters

  - ##### item: any

  #### Returns boolean

### onCollectionChanged

- onCollectionChanged(key: string, index: number, item: any): any

- - Defined in web/controls/AtomItemsControl.ts:681

  #### Parameters

  - ##### key: string

  - ##### index: number

  - ##### item: any

  #### Returns any

### Protected onCollectionChangedInternal

- onCollectionChangedInternal(key: string, index: number, item: any): void

- - Defined in web/controls/AtomItemsControl.ts:860

  #### Parameters

  - ##### key: string

  - ##### index: number

  - ##### item: any

  #### Returns void

### onPropertyChanged

- onPropertyChanged(name: string): void

- Implementation of INotifyPropertyChanged.onPropertyChanged

  Overrides AtomControl.onPropertyChanged

  - Defined in web/controls/AtomItemsControl.ts:253

  #### Parameters

  - ##### name: string

  #### Returns void

### Protected onScroll

- onScroll(): void

- - Defined in web/controls/AtomItemsControl.ts:904

  #### Returns void

### onSelectedItemsChanged

- onSelectedItemsChanged(type: any, index: any, item: any): void

- - Defined in web/controls/AtomItemsControl.ts:640

  #### Parameters

  - ##### type: any

  - ##### index: any

  - ##### item: any

  #### Returns void

### Protected onUpdateSize

- onUpdateSize(): void

- Inherited from AtomControl.onUpdateSize

  - Defined in web/controls/AtomControl.ts:307

  #### Returns void

### onUpdateUI

- onUpdateUI(): void

- Inherited from AtomComponent.onUpdateUI

  - Defined in core/AtomComponent.ts:400

  #### Returns void

### onVirtualCollectionChanged

- onVirtualCollectionChanged(): void

- - Defined in web/controls/AtomItemsControl.ts:307

  #### Returns void

### postVirtualCollectionChanged

- postVirtualCollectionChanged(): void

- - Defined in web/controls/AtomItemsControl.ts:301

  #### Returns void

### Protected preCreate

- preCreate(): void

- Overrides AtomControl.preCreate

  - Defined in web/controls/AtomItemsControl.ts:855

  #### Returns void

### registerDisposable

- registerDisposable(d: IDisposable): IDisposable

- Inherited from AtomComponent.registerDisposable

  - Defined in core/AtomComponent.ts:412

  #### Parameters

  - ##### d: IDisposable

  #### Returns IDisposable

### Protected removeAllChildren

- removeAllChildren(e: HTMLElement): void

- Inherited from AtomControl.removeAllChildren

  - Defined in web/controls/AtomControl.ts:324

  #### Parameters

  - ##### e: HTMLElement

  #### Returns void

### resetVirtualContainer

- resetVirtualContainer(): void

- - Defined in web/controls/AtomItemsControl.ts:289

  #### Returns void

### Protected resolve

- resolve<TService>(c: IClassOf<TService>, selfName?: string | function): TService

- Inherited from AtomComponent.resolve

  - Defined in core/AtomComponent.ts:436

  #### Type parameters

  - #### TService

  #### Parameters

  - ##### c: IClassOf<TService>

  - ##### Optional selfName: string | function

  #### Returns TService

### runAfterInit

- runAfterInit(f: function): void

- Inherited from AtomComponent.runAfterInit

  - Defined in core/AtomComponent.ts:404

  #### Parameters

  - ##### f: function

    - - (): void

      - #### Returns void

### Protected setElementClass

- setElementClass(element: HTMLElement, value: any, clear?: boolean): void

- Inherited from AtomControl.setElementClass

  - Defined in web/controls/AtomControl.ts:269

  #### Parameters

  - ##### element: HTMLElement

  - ##### value: any

  - ##### Optional clear: boolean

  #### Returns void

### Protected setElementValue

- setElementValue(element: HTMLElement, name: string, value: any): void

- Inherited from AtomControl.setElementValue

  Overrides AtomComponent.setElementValue

  - Defined in web/controls/AtomControl.ts:164

  #### Parameters

  - ##### element: HTMLElement

  - ##### name: string

  - ##### value: any

  #### Returns void

### setLocalValue

- setLocalValue(element: HTMLElement, name: string, value: any): void

- Inherited from AtomComponent.setLocalValue

  - Defined in core/AtomComponent.ts:286

  #### Parameters

  - ##### element: HTMLElement

  - ##### name: string

  - ##### value: any

  #### Returns void

### setPrimitiveValue

- setPrimitiveValue(element: HTMLElement, name: string, value: any): void

- Inherited from AtomComponent.setPrimitiveValue

  - Defined in core/AtomComponent.ts:251

  Use this method if you want to set attribute on HTMLElement immediately but defer atom control property

  #### Parameters

  - ##### element: HTMLElement

    HTMLElement

  - ##### name: string

    string

  - ##### value: any

    any

  #### Returns void

### Protected toggleSelection

- toggleSelection(data: any): void

- - Defined in web/controls/AtomItemsControl.ts:914

  #### Parameters

  - ##### data: any

  #### Returns void

### unbind

- unbind(element: HTMLElement, name?: string): void

- Inherited from AtomComponent.unbind

  - Defined in core/AtomComponent.ts:169

  Remove all bindings associated with given element and optional name

  #### Parameters

  - ##### element: HTMLElement

    T

  - ##### Optional name: string

    string

  #### Returns void

### unbindEvent

- unbindEvent(element: HTMLElement, name?: string, method?: EventListenerOrEventListenerObject, key?: string): void

- Inherited from AtomComponent.unbindEvent

  - Defined in core/AtomComponent.ts:207

  #### Parameters

  - ##### element: HTMLElement

  - ##### Optional name: string

  - ##### Optional method: EventListenerOrEventListenerObject

  - ##### Optional key: string

  #### Returns void

### updateSelectionBindings

- updateSelectionBindings(): void

- - Defined in web/controls/AtomItemsControl.ts:623

  #### Returns void

### updateSize

- updateSize(): void

- Inherited from AtomControl.updateSize

  - Defined in web/controls/AtomControl.ts:147

  #### Returns void

### Protected validateScroller

- validateScroller(): void

- - Defined in web/controls/AtomItemsControl.ts:931

  #### Returns void

Generated using TypeDoc