Bind ABL data to .NET controls
- Last Updated: May 11, 2023
- 2 minute read
- OpenEdge
- Version 13.0
- Documentation
(Windows only)
In ABL, the browse is the most sophisticated UI widget for displaying data. Despite that sophistication, it is simple to use. You build a query against a temp-table to link the browse and the data. This integration between user interface components and data objects is called data binding.
ABL provides tight binding between its native data objects (database buffer fields, temp-table fields, variables, and so on) and its native user interface. You need little ABL code to display and update data in an ABL user interface. If you do not specify formatting, ABL even applies the default formatting to the data without any extra application code.
Data binding also exists in .NET. If a particular .NET control supports data binding, you have access to similar display and update capabilities. For example, binding a System.Windows.Forms.DataGrid to a System.Data.DataTable provides automatic data display and the capability to add, update, or delete rows. This data binding is accomplished through prescribed interfaces. Any data object that complies with the binding interface can bind with the .NET control.
To access data from an ABL data source object in a .NET control, ABL provides
an intermediary binding object with the prescribed interface to act as a conduit between the
two objects. This conduit is the Progress.Data.BindingSource object, which is
referred to as the ProBindingSource in the documentation and the Progress
Developer Studio for OpenEdge UI. The ProBindingSource extends the .NET
binding source object, System.Windows.Forms.BindingSource, to facilitate binding ABL data to a .NET
control.