2016-08-15 3 views
0

Я хочу установить автозаполнение в текстовое поле, используя LINQ для сущностей.Autocomplete с любым символом в TextBox C#

Это мой код:

using (Reference_TraductionEntities context = new Reference_TraductionEntities()) 
{ 
    var source = new AutoCompleteStringCollection(); 

    var name = from a in context.Feuil1Prenom 
       where a.PRENOMF.StartsWith("i") 
       select a.PRENOMF; 
    source.AddRange(name.ToArray()); 

    textBox1.AutoCompleteCustomSource = source; 
    textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
    textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; 
} 

Этот код в порядке, но только с характером «я», я хочу автозаполнение с любой записью символов в текстовом поле

Как я могу это исправить?

Спасибо,

+1

затем заменить начинается с «i», чтобы начать с textbox1.text? – BugFinder

+1

Что произойдет, если вы просто удалите где? – ntohl

+0

если я удалю Где, я получаю ОШИБКУ: vshost32.exe перестает работать !! – devtunis

ответ

0

Очень спасибо BugFinder !!!!

заменяю начинается с "я", чтобы начинается с TextBox1.Text ...

using (Reference_TraductionEntities context = new Reference_TraductionEntities()) 
{ 
    var source = new AutoCompleteStringCollection(); 
    var name = from a in context.Feuil1Prenom 
       where a.PRENOMF.StartsWith(textBox1.Text) 
       select a.PRENOMF; 
    source.AddRange(name.ToArray()); 

    textBox1.AutoCompleteCustomSource = source; 
    textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
    textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; 
} 

Он работает !!!

0

Просто попробуйте этот один

this.textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
this.textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; 

private void textBox1_TextChanged(object sender, EventArgs e) 
{ 
TextBox t = sender as TextBox; 
if (t != null) 
{ 
    //say you want to do a search when user types 3 or more chars 
    if (t.Text.Length >= 3) 
    { 
     //SuggestStrings will have the logic to return array of strings either from cache/db 
     string[] arr = SuggestStrings(t.Text); 

     AutoCompleteStringCollection collection = new AutoCompleteStringCollection(); 
     collection.AddRange(arr); 

     this.textBox1.AutoCompleteCustomSource = collection; 
    } 
    } 
} 
Смежные вопросы