2016-03-26 3 views
0

Ich habe ein einfaches System in C# MVC Muster entwickelt, in Model Controller habe ich eine Liste von Mitarbeitern. Wenn das Formular geladen wird, möchte ich die Liste der Mitarbeiter zum Textfeld hinzufügen, und der Benutzer kann die Mitarbeiterdetails filtern, indem er den Code und den Namen des Mitarbeiters eingibt. Nun weiß ich nicht, wie Mitarbeiterliste Wert Textbox auto vollständige Kundenquelle hinzuzufügen, bitte helfen ..Auto Complete Textbox in der Datenbank Liste Wert

Modell Controller

public List<Employee> Findlist() 
    { 
     List<Employee> emp = new List<Employee>(); 
     string query = "select RTRIM(code) as [Code],RTRIM(name) as [Name] from m_Employee"; 

     SqlCommand cmd = new SqlCommand(query); 
     cmd.Connection = con; 

     SqlDataReader dr = cmd.ExecuteReader(); 

     while (dr.Read()) 
     { 
      Employee e = new Employee(); 
      e.code = dr["code"].ToString(); 
      e.name = dr["name"].ToString(); 

      emp.Add(e); 
     } 

     dr.Close(); 
     return emp; 
    } 

-Controller

public List<Employee> SearchEmp() 
{ 
     EmployeeModel md = new EmployeeModel(); 
     return md.Findlist(); 
} 

Ansicht

private void FrmEmployeeSearchBar_Load(object sender, EventArgs e) 
    { 
     try 
     { 
      LoginControll lc = new LoginControll(); 
      List<Employee> emp = new List<Employee>(); 

      emp = lc.SearchEmp(); 

      AutoCompleteStringCollection collection = new AutoCompleteStringCollection(); 

      textBox1.AutoCompleteSource = AutoCompleteSource.ListItems; 
      textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 

      for (int i = 0; i < emp.Count; i++) 
      { 
       string result = Convert.ToString(emp[i].name); 
       //collection.Add(emp[i].code); 
       collection.Add(result); 
      } 

      textBox1.AutoCompleteCustomSource = collection; 
      //txtAutocompletesearcbar.au 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK); 
     } 
} 

Antwort

0

Fügen Sie die folgenden Zeilen hinzu

textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; 
textBox1.AutoCompleteMode = AutoCompleteMode.Suggest; 

vor

textBox1.AutoCompleteCustomSource = collection;