Я пытаюсь добавить функцию автозаполнения в текстовое поле, результаты поступают из базы данных. Они представлены в формате
[001] Last, First Middle
В настоящее время вы должны ввести [001]..., чтобы отобразить записи. Так что проблема в том, что я хочу, чтобы она завершилась, даже если я сначала набираю первое имя. Поэтому, если запись была
[001] Смит, Джон Д.
если я начал набирать Джона, тогда эта запись должна отображаться в результатах для автоматического завершения.
В настоящее время код выглядит примерно так:
AutoCompleteStringCollection acsc = new AutoCompleteStringCollection();
txtBox1.AutoCompleteCustomSource = acsc;
txtBox1.AutoCompleteMode = AutoCompleteMode.Suggest;
txtBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
....
if (results.Rows.Count > 0)
for (int i = 0; i < results.Rows.Count && i < 10; i++)
{
row = results.Rows[i];
acsc.Add(row["Details"].ToString());
}
}
результат - это набор данных, содержащий результаты запроса
Запрос представляет собой простой поисковый запрос, используя оператор типа. Правильные результаты возвращаются, если мы не используем автозаполнение и просто бросаем результаты в массив.
Любые советы?
EDIT:
Вот запрос, который возвращает результаты
SELECT Name from view_customers where Details LIKE '{0}'
С {0} является заполнителем искомой строки.