Introduction
This article explains data binding. The .NET Framework provides data binding in Windows Forms applications to access the data from a database such as SQL Server. In this case a control in the UI (User Interface) is bound to data values from a data source.
Data Binding
Data Binding is the process between a User Interface (UI) and a data source. When a binding is established and the data changes, the User Control bound to the data can display the changes automatically.
- Simple Data Binding
- Complex Data Binding
Simple Data Binding
In Simple Data Binding, a control is bound to a single data element from the data source. For example a TextBox control, Label control displays a single value.
Complex Data Binding
Complex Data Binding has the ability to bind more than one item on the control from the data source, for example a DataGrid, Listbox and so on controls.
Features of Data Binding
- Better performance of the application.
- Customization of default data binding process by modifying the generated code.
- Fine control on data binding through events.
- Reduction in code size.
Write the following procedure for creating a database and a table in SQL Server:
Create Database Employee
use Employee
create table EmployeeInfo
(
EmpId int identity(1,1),
Emp_Name varchar(max),
Emp_Department varchar(max)
)
Write the following procedure for inserting the values into the table columns:
insert into EmployeeInfo values('Pankaj','Web Developer')
Write the following query to execute the table schema:
select * from EmployeeInfo

Now I will show you how to bind the values in user controls from the data source. Use the following procedure to create the sample.
Step 1:
Open Visual Studio then select "Create New Project" --> "F# Console Application".
figure-create application
Step 2:
Now go the Solution Explorer; on the right side of the application. Right-click on "References" and select "Add references".


Step 3:
After selecting "Add References", in the framework template you need to select "System.Windows.Forms" and "System.Drawing" while holding down the Ctrl key and click on "Ok".

Write the following code for binding the data values from the data source to the Windows Forms form.
Step 4:
open System
open System.Windows.Forms
open System.Data
open System.Data.SqlClient
open System.Drawing
let constring = @"Data Source=MCNDESKTOP34;Initial Catalog=Employee;User ID=; Password="
let con=new SqlConnection(constring)
let dataadpter = new SqlDataAdapter("Select * from EmployeeInfo", con)
let ds = new DataSet()
dataadpter.Fill(ds,"EmployeeInfo")|>ignore
let ffont=new Font("Verdana", 9.75F,FontStyle.Regular, GraphicsUnit.Point)
let databindform = new Form(Text="DataBinding")
let lblEmpid=new Label(Text="EmpId:",Top=20,Left=40,Width=60)
let lblEmpname=new Label(Text="Emp Name:",Top=60,Left=0,Width=100)
let lblEmpdept=new Label(Text="Emp Department:",Top=100,Left=0,Width=130)
let exitbutton=new Button(Text="Exit",Top=150,Left=70)
let lblid=new Label(Top=20,Left=160,BorderStyle=BorderStyle.FixedSingle,Width=40)
let lblname=new Label(Top=60,Left=140,BorderStyle=BorderStyle.FixedSingle,Width=120)
let lbldept=new Label(Top=100,Left=140,BorderStyle=BorderStyle.FixedSingle,Width=120)
databindform.Font<-ffont
databindform.Controls.Add(exitbutton)
databindform.Controls.Add(lblEmpid)
databindform.Controls.Add(lblEmpname)
databindform.Controls.Add(lblEmpdept)
databindform.Controls.Add(lblid)
databindform.Controls.Add(lblname)
databindform.Controls.Add(lbldept)
lblid.DataBindings.Add(new Binding("Text",ds,"EmployeeInfo.Empid"))
lblname.DataBindings.Add(new Binding("Text",ds,"EmployeeInfo.Emp_Name"))
lbldept.DataBindings.Add(new Binding("Text",ds,"EmployeeInfo.Emp_Department"))
exitbutton.Click.Add(fun exit->
databindform.Close()
con.Close())
databindform.Show()
Application.Run(databindform)
Step 5
Debug the application by pressing F5 to execute the Windows Forms application. After debugging the application the output will be as in the following figure:

Summary
The .NET Framework provides data binding in Windows Forms to fetch data from a database such as SQL Server. The Data Binding allows users to bind the values in read-only selection lists.

Debasis SahaPosted Mar 31, 2016, 1:04 AM
Good One..
Pankaj LohaniPosted Dec 1, 2013, 11:47 PM
sir complex binding is nothing its just like a concept to bind a more than one items on control usually we used to bind textboxe and labels to bind only single items from the datasource..
Sam HobbsPosted Nov 30, 2013, 7:31 PM
I believe that controls such as DataGrids, and Listboxes are usually bound using simple data binding. I also believe that a label can use complex data binding, such as to create a name from first name and last name fields, Or do I misunderstand? Note that I have never seen an example of complex data binding.