自动填充DataGridView中的第二个单词

时间:2019-04-18 06:26:39

标签: c# winforms datagridview autocomplete

我有一个DataGridView,我在一个单元格中使用了AutoComplete。但是使用Autocomplete只能搜索第一个单词。我希望也可以使用AutoComplete搜索第二个单词。数据是从数据库中获取的。

例如,db包含咖啡粉,茶,盐粉等。

如果我搜索Powder,我想要的结果是Coffee Powder和Salt Powder.Now,如果我使用第二个单词进行搜索,我什么都没有。

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”,我会得到糖和盐粉, 如果我搜索“ Su”,我会得到糖, 如果我搜索“ Po”,则没有任何结果。

预期结果: 如果我搜索“ Po”,我希望将盐粉作为自动完成的结果。

0 个答案:

没有答案