BindingSource and BindingNavigator(OleDbDataAdapter Visual F#)

Posted by Rey Dacoco in

BindingSource allows us to simplify the binding process to our control. To create a binding source in Visual F#, use the following syntax:

let bindingsourceobjname=new BindingSource()
for instance:
let bindingsource=new BindingSource()
The two most important properties of BindingSource component are DataSource which specifies the data source of the bindingsource, and the Datamember which specifies the specific table to which your bindingsource is bound to.

BindingNavigator are simply used to add navigational buttons to your database application. The syntax in creating a binding source is:
let bindingnavigatorobjvariable=new BindingNavigator()
for instance:
let bindingnav=new BindingNavigator()
One of the essential properties of the BindingNavigator component is the BindingSource which specifies the bindingsource name to which the BindingNavigator is bound to.

Follow these steps for a simple example on using binding navigator:

Before the Database Connection and Binding process I want you to make an Ms-Access database file named “dbEmployee” containing a table named “tblEmployee”. Use the following specifications:

Field NameData Type Description
chrempno text Handles employee id
chrfnametext Handles employee’s name
chrlname text Holds employee’s last name

After designing the structure of your table, you can enter appropriate values for each field. For instance:

1John Doe
2Jean Doe

Now that we are done creating a table, we can now link to it by using OleDbDataAdapter in Visual F#:

1. Click Start>All Programs>Microsoft Visual Studio 2008>Microsoft Visual Studio 2008.

2. Click File>New>Project>Select Visual F# in the project types>Select F# application in the Visual Studio installed templates category.

3. Click the Project menu>Add reference>Click the .Net tab>Locate then double-click System.Windows.Forms. Do step 3 again and this time, select System.Drawing and System.Data from the .Net tab.

4. Enter the following code after the line “// Learn more about F# at “:

// Learn more about F# at
//specifies the location of the class files
//that will be needed in our application
open System
open System.Windows.Forms
open System.Data
open System.Drawing
//creates a connection object
let olecon = new System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
  Data Source=C:\Documents and Settings\Administrator\My Documents\dbEmployee.mdb")
//adds an oleDbDataAdapter
let dataadapter = new System.Data.OleDb.OleDbDataAdapter("Select * from tblEmployee", olecon)
//generate a dataset
let dataset11 = new DataSet()
//fill our dataset with record values
//creates a form
let dataform = new Form(Text="Change DataGrid Header",ClientSize=new System.Drawing.Size(398, 232))
//creates a datagrid
let datagrid = new DataGridView(ColumnHeadersHeightSizeMode=DataGridViewColumnHeadersHeightSizeMode.AutoSize,Size=new System.Drawing.Size(341, 143),Location=new System.Drawing.Point(22, 38))
//creates a binding source to simplify the binding process
let bindingsource=new BindingSource()
//creates a binding navigator
//this will allow us to add navigational buttons to our data grid
let bindingnav=new BindingNavigator()
//creates a toolstrip buttons for our binding navigator
let movefirst=new ToolStripButton(Text="Top")
let moveprev=new ToolStripButton(Text="Prev")
let movenext=new ToolStripButton(Text="Next")
let movelast=new ToolStripButton(Text="Bottom")
//adds the toolstripbuttons to our binding navigator
//adds a function to each buttons
//assigns the dataset name as a bindingsource datasource
//assigns our table as a binding source datamember
//assigns the bindingsource name as a binding navigators
//bindingsource value
//opens the connection
//adds the controls to our form
datagrid.DataSource <- bindingsource

//add the datagrid to our form
//execute our application
5. Click the run icon to execute your application. You should now see an output similar to the following screen shot: For more sketchy tutorials on Visual F# visit Microsoft F# Developer Center.


Post a Comment


My photo
I am just a simple man with a simple mind. And this is my simple blog. New Posts will be available soon. Enjoy reading and never stop learning:)

Total Pageviews

Link List


Got questions? You can reach me here: