Step1 :
First you need to design a table in Ms Access 2007 to retrieve the records from database.
Step2:
On the File menu, click New Project. Select Windows Forms Application as your project type.
Design the Form using controls from Toolbox.
Step3:
Now open the Form.cs page and write the following source code
Form.cs Code :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace Autocomplete
{
public partial class Autocomplete_TextBox : Form
{
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=|DataDirectory|\App_Data\SampleDB.accdb; Jet OLEDB:Database
Password=1234;Persist Security Info=False");
AutoCompleteStringCollection namesCollection = new AutoCompleteStringCollection();
public AmirAds_MailSend()
{
InitializeComponent();
}
private void Autocomplete_TextBox_Load(object sender, EventArgs e)
{
con.Open();
OleDbCommand cmd = new OleDbCommand("Select distinct
Email_Id from Sample_CreateClient order by Email_Id asc", con);
cmd.CommandType = CommandType.Text;
OleDbDataReader dr;
dr= cmd.ExecuteReader();
if
(dr.HasRows == true)
{
while (dr.Read())
namesCollection.Add(dr["Email_Id"].ToString());
}
con.Close();
txtToMail.AutoCompleteMode = AutoCompleteMode.Suggest;
txtToMail.AutoCompleteSource = AutoCompleteSource.CustomSource;
txtToMail.AutoCompleteCustomSource =
namesCollection;
}
}
}
Step4:
Now build the Solution and Debug it for the output.
thanx sir it work but it has a problem u have to keep your database in solution but if we want to add new record in it it not work we want that database reside in sql server & we access auto complete textbox from sql which isb not possible here.........reply me on
ReplyDeletechaudharysunny1989@gmail.com
Hi Sunny Saharawat
DeleteIn the above example i have used the MSAccess database. If you are using SQL Server database then use this code.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsFormsApp
{
public partial class Form1 : Form
{
SqlConnection con = new SqlConnection(@"Data Source=TR\SQLEXP;Initial Catalog=Employee;User ID=sa;Password=123");
AutoCompleteStringCollection namesCollection = new AutoCompleteStringCollection();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
con.Open();
SqlCommand cmd = new SqlCommand("Select distinct Location from Employee_Table order by Location asc",con);
cmd.CommandType = CommandType.Text;
SqlDataReader dr;
dr= cmd.ExecuteReader();
if (dr.HasRows == true)
{
while (dr.Read())
namesCollection.Add(dr["Location"].ToString());
}
con.Close();
txtLocation.AutoCompleteMode = AutoCompleteMode.Suggest;
txtLocation.AutoCompleteSource = AutoCompleteSource.CustomSource;
txtLocation.AutoCompleteCustomSource = namesCollection;
}
}
}
BUt this will populate only the very first time. If u enter semi colon and then try entering the next email id,it wont populate.
Deletehi sir,
ReplyDeleteI have an issue that is how can we separate mail Ids when we add more than one mail Ids using auto complete in c #window application(Infragistic tool)
Please reply me..
its not working for me..
ReplyDeleteThe code is perfect, it is tested and posted. Please check your code.
Deletesridhar , BUt this will populate only for the very first time when the user enters some value in textbox. once the first value is auto completed and If u enter semi colon and then try entering the next email id,it wont populate.
DeleteA simple tutorial on...C# Autocomplete textbox from database.
ReplyDeleteling
Attempted to read write and protected memory problem i am facing when typing in the textbox.please reply on my email id manpreettwinkle0@gmail.com
ReplyDelete