sami.offline
Membership Platform Specialist
2
MONTHS
2 2 MONTHS OF SERVICE
LEVEL 1
200 XP
In this tutorial I will show you how to save and autocomplete a textbox with multiple columns in Visual Basic 2008 and MS Access Database. As I expand my knowledge about autocomplete I discovered that you can put multiple columns/fields on it. So, it depends on you or your query, on how many columns/fields you want to exist.
Let's begin:
1.Open Visual Basic 2008, create a project and do the Form just like this.
2.Double click the Form and do the following codes above the Form_Load
.
3.In the Form_Load
, do this code for the autocomplete of a Textbox.
4.Go back to the Design Views, double click the Save Button and do the following code for inserting the data in the Database.
Reminder: you cannot autocomplete a Textbox without doing this, on its properties.
You can download the complete source code.
Download
Let's begin:
1.Open Visual Basic 2008, create a project and do the Form just like this.

2.Double click the Form and do the following codes above the Form_Load
.
- 'DECLARE A STRING VARIABLE TO PUT YOUR QUERY ON IT
- Dim
query As
String
- 'DECLARING A VARIABLE AS OLEBDCONNECTION TO REPRESENT AN OPEN CONNECTION TO THE DATA SOURCE
- 'IN THIS AREA, YOUR GOING TO PUT A CONNECTION STRING THAT REPRESENTS A PROVIDER AND A DATA SOURCE.
- Dim
con As
OleDb.
OleDbConnection
=
New
OleDb.
OleDbConnection
(
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
_
- &
Application.
StartupPath
&
"\people.accdb;"
)
3.In the Form_Load
, do this code for the autocomplete of a Textbox.
- Private
Sub
Form1_Load(
ByVal
sender As
System.
Object
, ByVal
e As
System.
EventArgs
)
Handles
MyBase
.
Load
- Try
- 'OPENING THE CONNECTION
- con.
Open
(
)
- 'PUTING THE VALUE ON A VARIABLE THAT YOU HAVE BEEN DECLARE ON THE TOP
- query =
"SELECT * FROM tblpeople"
- 'DECLARING A VARIABLE AS OLEDBDATAADAPTER
- 'TO REPRESENTS A SET OF DATA COMMANDS AND A DATABASE CONNECTION
- 'THAT ARE USED TO FILL THE DATASET/DATATABLE AND UPDATE THE DATA SOURCE
- 'PUT HERE YOUR COMMAND TEXT AND A CONNECTION STRING
- Dim
da As
OleDb.
OleDbDataAdapter
=
New
OleDb.
OleDbDataAdapter
(
query, con)
- 'DECLARING A VARIABLE AS DATATABLE
- 'REPRESENT ONE TABLE IN THE DATABASE
- Dim
dt As
New
DataTable
- 'FILLING THE DATATABLE
- da.
Fill
(
dt)
- 'DECLARING A VARIABLE AS DATAROW
- 'REPRESENTS A ROW OF DATA IN THE DATATABLE
- Dim
r As
DataRow
- 'CLEARING THE DATA IN THE CUSTOM SOURCE OF A TEXTBOX
- txtsearch.
AutoCompleteCustomSource
.
Clear
(
)
- 'DECLARING A VARIABLE AS INTEGER AND STORE THE MAX COLUMN OF THE DATATABLE
- Dim
maxcolumn As
Integer
=
dt.
Columns
.
Count
-
1
- For
Each
r In
dt.
Rows
- For
i As
Integer
=
0
To
maxcolumn
- 'ADDING THE DATA OF THE DATATABLE IN THE CUSTOM SOURCE OF A TEXTBOX
- txtsearch.
AutoCompleteCustomSource
.
Add
(
r.
Item
(
i)
.
ToString
)
- Next
i
- Next
r
- Catch
ex As
Exception
- MsgBox
(
ex.
Message
)
- End
Try
- 'CLOSING A CONNECTION
- con.
Close
(
)
- End
Sub
4.Go back to the Design Views, double click the Save Button and do the following code for inserting the data in the Database.
- Private
Sub
btnsave_Click(
ByVal
sender As
System.
Object
, ByVal
e As
System.
EventArgs
)
Handles
btnsave.
Click
- Try
- 'OPENING A CONNECTION
- con.
Open
(
)
- 'PUTTING THE VALUE ON A VARIABLE THAT YOU HAVE BEEN DECLARE ON THE TOP
- query =
"INSERT INTO tblpeople (FIRSTNAME,LASTNAME,ADDRESS) "
_
- &
"VALUES ('"
&
txtfname.
Text
&
"','"
&
txtlname.
Text
&
"','"
&
txtaddress.
Text
&
"')"
- 'DECLARING A VARIABLE AS OLEDBDATAADAPTER
- 'TO REPRESENTS A SET OF DATA COMMANDS AND A DATABASE CONNECTION
- 'THAT ARE USED TO FILL THE DATASET/DATATABLE AND UPDATE THE DATA SOURCE
- 'PUT HERE YOUR COMMAND TEXT AND A CONNECTION STRING
- Dim
da As
OleDb.
OleDbDataAdapter
=
New
OleDb.
OleDbDataAdapter
(
query, con)
- 'DECLARING A VARIABLE AS DATATABLE
- 'REPRESENT ONE TABLE IN THE DATABASE
- Dim
dt As
New
DataTable
- 'FILLING THE DATATABLE
- da.
Fill
(
dt)
- MsgBox
(
"Data has been save"
, MsgBoxStyle.
SystemModal
, "Save"
)
- Catch
ex As
Exception
- MsgBox
(
ex.
Message
)
- End
Try
- 'CLOSING A CONNECTION
- con.
Close
(
)
- 'CALLING THE FIRST LOAD TO REFRESH THE DATA IN THE CUSTOM SOURCE OF A TEXTBOX
- Call
Form1_Load(
sender, e)
- End
Sub
Reminder: you cannot autocomplete a Textbox without doing this, on its properties.

You can download the complete source code.
Download
You must upgrade your account or reply in the thread to view the hidden content.