ITSourceCode.com

We Exist to Provide 100% Free Source Code and Tutorials

Custom Search

Multi-Columns AutoComplete in a TextBox Using C# and SQL Server

multiAutocompleteSQLfig.3

Autocomplete plays an important role in searching for data or any records in the database. So, in this tutorial, I will teach you an advanced method of autocomplete in a textbox using C# and SQL Server. This method has the ability to get the records in every column of the table in the database. It is very helpful because you don’t have to exert much effort when retrieving data or records in the database.

 

Let’s begin:

 

Create a database in the SQL Server 2005 Express Edition and name it “dbplace“.

Create a table in the database that you have created.

 /****** Object: Table [dbo].[tblplace] Script Date: 06/28/2016 15:36:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[tblplace](
 [ID] [int] IDENTITY(1,1) NOT NULL,
 [p_Country] [nvarchar](50) NULL,
 [p_City] [nvarchar](50) NULL,
 [p_ZipCode] [nchar](10) NULL,
 CONSTRAINT [PK_tblplace] PRIMARY KEY CLUSTERED 
(
 [ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

After creating the database, open Microsoft Visual Studio 2008 and create a new windows form application for c#. Then, do the form just like this.

multiAutocompleteSQLfig.1

Go to the solution explorer and hit “code view” to fire the code editor.

multiAutocompleteSQLfig.2

In the code editor, declare all classes and variables that are needed.

Note: Put “using System.Data.SqlClient;” above the namespace to access sql server library.

 //initialize all classes
 SqlConnection conn = new SqlConnection();
 SqlCommand cmd = new SqlCommand();
 SqlDataAdapter da = new SqlDataAdapter();
 DataTable dt = new DataTable();

 //declaring variables
 string query;
 int result;

After that, create a method for the autocomplete textbox.

 private void AutoSuggest()
 {
 try
 {

 //set a query for retrieving data in the database
 query = "Select * from tblplace";
 //initialize new Sql commands
 cmd = new SqlCommand();
 //hold the data to be executed.
 cmd.Connection = conn;
 cmd.CommandText = query;
 //initialize new Sql data adapter
 da = new SqlDataAdapter();
 //fetching query in the database.
 da.SelectCommand = cmd;
 //initialize new datatable
 dt = new DataTable();
 //refreshes the rows in specified range in the datasource. 
 da.Fill(dt);
 int max = dt.Columns.Count;

 txtMultiSuggest.AutoCompleteCustomSource.Clear();
 foreach (DataRow r in dt.Rows)
 {
 for (int i = 1; i < max; i++)
 {
 
 //getting all rows in the specific field|Column
 var rw = r.Field<string >(i);
 //MessageBox.Show(rw);

 //Set the properties of a textbox to make it auto suggest.
 txtMultiSuggest.AutoCompleteMode = AutoCompleteMode.Suggest;
 txtMultiSuggest.AutoCompleteSource = AutoCompleteSource.CustomSource;
 //adding all rows into the textbox
 txtMultiSuggest.AutoCompleteCustomSource.Add(rw);
 }
 } 
 }
 catch (Exception ex)
 {
 MessageBox.Show(ex.Message);
 
 }

 }

Go back to the design view, establish a connection between SQL server and C#. Then, call a method of an autocomplete textbox.

 private void Form1_Load(object sender, EventArgs e)
 {
 //set a connection between SQL server and Visual C#
 conn.ConnectionString = "Data Source=.\\SQLEXPRESS;database=dbplace;trusted_connection=true;";
 AutoSuggest();
 }

Go back to the design view again, double-click the button and do the following code for saving the data in the database.

 private void Button1_Click(object sender, EventArgs e)
 {
 try
 {
 //opening connection
 conn.Open();
 //create an insert query;
 query = "INSERT INTO tblplace (p_Country,p_City,p_ZipCode) VALUES('" + txtCountry.Text + "','" + txtCity.Text + "','" + txtZipCode.Text + "')";
 //it holds the data to be executed.
 cmd.Connection = conn;
 cmd.CommandText = query;
 //execute the data.
 result = cmd.ExecuteNonQuery();
 //validate the result of the executed query.
 if (result > 0)
 { 
 MessageBox.Show("Data has been saved in the SQL database");
 //calling a method
 AutoSuggest();

 }
 else
 {
 MessageBox.Show("SQL QUERY ERROR");
 }
 //closing connection
 conn.Close();

 }
 catch (Exception ex)//catch exeption
 {
 //displaying error message.
 MessageBox.Show(ex.Message);
 }
 }

 

Output:

multiAutocompleteSQLfig.3

For all students who need a programmer for your thesis system or anyone who needs a source code in any programming languages. You can contact me @ :

 
Email – jannopalacios@gmail.com
Mobile No. – 09305235027 – TNT

 

Download Source Code

Facebook Comments

Check Your Domain Ranking

2 Comments

Add a Comment
  1. En el caso de no poder ponernos de pie por cualquier inconveniente, asimismo existen ejercicios para efectuar tumbadas.

  2. What’s Happening i’m new to this, I stumbled upon this I have found It positively useful and it has aided me out loads. I am hoping to contribute & help other users like its aided me. Good job.

Leave a Reply

Your email address will not be published. Required fields are marked *

ITSourceCode.com © 2016 Frontier Theme

Subscribe For Latest Updates

Signup for our newsletter and get notified when we publish new articles for free!