У меня есть DataGridView, и я использовал автозаполнение в одной из ячеек. Но только первое слово можно найти с помощью автозаполнения. Я хочу, чтобы второе слово также было найдено с помощью автозаполнения. Данные берутся из базы данных.
Например, БД содержит кофейный порошок, чай, соленый порошок и т. Д.
Если я ищу Порошок, я хочу получить результат как Порошок Кофе и Соль. Теперь я не получаю никакого результата, если использую второе слово для поиска.
private void datagrid_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (dgvdetails.CurrentCell.ColumnIndex == 2)
{
string titleText = dgvdetails.Columns[2].HeaderText;
if (titleText.Equals("Product Name"))
{
TextBox autoText = e.Control as TextBox;
if (autoText != null)
{
autoText.AutoCompleteCustomSource = LoadAutoComplete(); //this method is below
autoText.AutoCompleteMode = AutoCompleteMode.Suggest;
autoText.AutoCompleteSource = AutoCompleteSource.CustomSource;
}
}
}
}
private AutoCompleteStringCollection LoadAutoComplete()
{
DataTable dt = new DataTable();
dt = estimatesub.Searchproduct(num);
AutoCompleteStringCollection stringCol = new AutoCompleteStringCollection();
foreach (DataRow row in dt.Rows)
{
// textBox1.Text = Convert.ToString(row[1]);
stringCol.Add(Convert.ToString(row[1]));
}
return stringCol;
}
Если мой БД содержит Название продукта: Пшеница, Сахар, Кофе, Порошок Соли .
Мой текущий результат: если я ищу 'Wh', я получаю результат Wheat,
если я найду 'S', я получу сахар и соль,
если я ищу "Су", я получаю сахар,
если я ищу 'Po', я не получаю никакого результата.
Ожидаемый результат:
если я ищу 'Po', я хочу соленый порошок в результате автозаполнения.