# qooxdoo

Home » Manual (v2.1.1) » Core » Data Binding

# Data Binding

Data binding is a concept by which two data items are bound, so that changes to one are propagated to the second, and vice versa. This requires the possibility to detect such changes during runtime. In qooxdoo, class properties fulfil this requirement.

Using data binding allows you to e.g. keep two widgets automatically synchronized over the runtime of your application, although they might be spatially separated and have wildly different visual representations (e.g. a text field and a spinner).

- Data Binding Introduction
  - The main idea
    - Data
    - Store
    - Model
    - Controller
    - View
- Demos, API and CheatSheet
- Single Value Binding
  - Binding a single property to another property
  - Binding a data event to property
  - Bind a property chain to another property
  - Bind an array to a property
  - Options: Conversion and Validation
  - Managing bindings
  - Debugging
  - Tech notes
- Controller
  - Selection
  - Delegate
    - configureItem
    - bindItem
    - createItem
  - Object Controller
  - List Controller
  - Tree Controller
  - Form Controller
  - Combining Controller
- Stores
  - JSON Store
  - JSONP Store
  - YQL Store
  - Offline Store
  - Combining with controllers
- Models
  - Structure
  - Data Array
  - Importance of events
  - Disposing
  - JSON Marshaler
    - toClass
    - toModel
    - createModel (static)
  - How to get my own code into the model?
- Events
  - Change Events
    - Array
  - Bubbling Events
    - Enabling
    - Details
    - Array