UI data binding is a software design pattern to simplify development of GUI applications. UI data binding binds UI elements to an application domain model. Most frameworks employ the Observer pattern as the underlying binding mechanism. To work efficiently, UI data binding has to address input validation and data type mapping.

A bound control is a widget whose value is tied or bound to a field in a recordset (e.g., a column in a row of a table). Changes made to data within the control are automatically saved to the database when the control's exit event triggers.

UI data binding

Example

<TextBlock Text="{ Binding Username}" />

public class ExampleViewModel

{

public string Username { get; set; }

}

Data binding frameworks and tools

Delphi

DSharp third-party data binding tool

OpenWire Visual Live Binding - third-party visual data binding tool

Java

JFace Data Binding

JavaFX Property

.NET

Windows Forms data binding overview

WPF data binding overview

Unity 3D data binding framework (available in modifications for NGUI, iGUI and EZGUI libraries)

UI data binding

JavaScript

Angular

AngularJS

Backbone.js

Ember.js

Datum.js

knockout.js

Meteor, via its Blaze live update engine

OpenUI5

React

Vue.js

See also

Data binding

References

Data management

Software design patterns

UI data binding