HOME

TheInfoList



OR:

UI data binding is a
software design pattern In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine c ...
to simplify development of GUI applications. UI data binding binds UI elements to an application domain model. Most frameworks employ the
Observer pattern In software design and engineering, the observer pattern is a software design pattern in which an object, named the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by ...
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 A recordset is a data structure that consists of a group of database records, and can either come from a base table or as the result of a query to the table. The concept is common to a number of platforms, notably Microsoft's Data Access Objects ...
(e.g., a
column A column or pillar in architecture and structural engineering is a structural element that transmits, through compression, the weight of the structure above to other structural elements below. In other words, a column is a compression member ...
in a
row Row or ROW may refer to: Exercise *Rowing, or a form of aquatic movement using oars *Row (weight-lifting), a form of weight-lifting exercise Math *Row vector, a 1 × ''n'' matrix in linear algebra. *Row (database), a single, implicitly structured ...
of a table). Changes made to data within the control are automatically saved to the database when the control's exit event triggers.


Example

public class ExampleViewModel


Data binding frameworks and tools


Delphi Delphi (; ), in legend previously called Pytho (Πυθώ), in ancient times was a sacred precinct that served as the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient classical world. The oracl ...

*
DSharp Derryck Gleaton (born 30 August 1988), better known as DSharp, is an American violinist, DJ, singer and producer based in Atlanta, Georgia. Known for his trademark colored violins, he writes his own music and performs cover versions of popular so ...
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)


JavaScript

* Angular *
AngularJS AngularJS is a discontinued free and open-source JavaScript-based web framework for developing single-page applications. It was maintained mainly by Google and a community of individuals and corporations. It aimed to simplify both the developm ...
* Backbone.js *
Ember.js Ember.js is an open-source JavaScript web framework that utilizes a component-service pattern. It allows developers to create scalable single-page web applications by incorporating common idioms, best practices, and patterns from other single-pa ...
* Datum.js * knockout.js *
Meteor A meteoroid () is a small rocky or metallic body in outer space. Meteoroids are defined as objects significantly smaller than asteroids, ranging in size from grains to objects up to a meter wide. Objects smaller than this are classified as mic ...
, via its ''Blaze'' live update engine * OpenUI5 * React * Vue.js


See also

* Data binding


References

Data management Software design patterns {{database-stub