# Data binding

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Data_binding
> Markdown URL: https://mediated.wiki/source/Data_binding.md
> Source: https://en.wikipedia.org/wiki/Data_binding
> Source revision: 1207639846
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

In [computer programming](/source/computer_programming), '''data-binding''' is a general technique that binds data sources from the provider and consumer together and [synchronizes](/source/data_synchronization) them. This is usually done with two data/information sources with different languages, as in [XML data binding](/source/XML_data_binding) and [UI data binding](/source/UI_data_binding). In [UI data binding](/source/UI_data_binding), data and information objects of the same language, but different logic function are bound together (e.g., [Java](/source/Java_(programming_language)) [UI](/source/user_interface) elements to Java objects).<ref>{{cite web |url=https://www.techopedia.com/definition/15652/data-binding|title=What is Data Binding? |work=Techopedia.com |accessdate=30 December 2015}}</ref>

In a data binding process, each data change is reflected automatically by the elements that are bound to the data. The term data binding is also used in cases where an outer representation of data in an element changes, and the underlying data is automatically updated to reflect this change. As an example, a change in a [<code>TextBox</code>](/source/text_box) element could modify the underlying data value.<ref>{{cite web |url=https://msdn.microsoft.com/en-us/library/ms752347(v=vs.110).aspx |title=Data Binding Overview |work=Microsoft Developer Network |publisher=Microsoft |access-date=29 December 2016}}</ref>

== Data binding frameworks and tools ==
List of examples of data binding frameworks and tools for different programming languages:
=== C# .NET ===
* [Windows Presentation Foundation](/source/Windows_Presentation_Foundation) (WPF)
* [Blazor](/source/Blazor)
* [Windows Forms](/source/Windows_Forms)
* [MAUI](/source/.NET_MAUI)

=== Delphi ===
* DSharp third-party data binding tool
* [OpenWire](/source/OpenWire_(library)) Visual Live Binding—third-party visual data binding tool
* LiveBindings

=== Java ===
* [Google Web Toolkit](/source/Google_Web_Toolkit)
* JavaFX
* Eclipse

=== JavaScript ===
{{Main|Comparison of JavaScript-based web frameworks}}

=== Objective-C ===
* AKABeacon iOS Data Binding framework

=== Swift ===
* [SwiftUI](/source/SwiftUI)

=== Scala ===
* Binding.scala

==See also==
* [XML data binding](/source/XML_data_binding)
* [UI data binding](/source/UI_data_binding)

==References==
{{reflist}}

==Further reading==
*{{cite book |last=Noyes |first=Brian |title=Data Binding with Windows Forms 2.0: Programming Smart Client Data Applications with .NET |url=https://books.google.com/books?id=RxptHgJ5W2cC |date=12 January 2006 |publisher=Pearson Education |isbn=978-0-321-63010-0}}

{{DEFAULTSORT:Data Binding}}
<!--Categories-->
Category:Data management

{{Comp-sci-stub}}

---
Adapted from the Wikipedia article [Data binding](https://en.wikipedia.org/wiki/Data_binding) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Data_binding?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
