TextBox自动完成上下键Cant在列表中选择项目
本文关键字:列表 选择 项目 Cant 上下 TextBox | 更新日期: 2023-09-27 18:21:15
在C#窗体中,我有一个带有自动完成模式的文本框。当用户键入一些字母时,建议列表将正确显示。如果使用(键盘)向上和向下键选择列表中的项目,则无法选择项目。如果我选择均值,它将获得列表中的第一个项目。。
请建议。。
这里是我的代码。。。
private void txt_Name_TextChanged(object sender, EventArgs e)
{
try
{
SqlDataReader datareader = qu.GetValue("English_Short");
AutoCompleteStringCollection local = new AutoCompleteStringCollection();
if (datareader.HasRows == true)
{
while (datareader.Read())
local.Add(datareader["English_Short"].ToString());
}
txt_Name.AutoCompleteMode = AutoCompleteMode.Suggest;
txt_Name.AutoCompleteSource = AutoCompleteSource.CustomSource;
txt_Name.AutoCompleteCustomSource = local;
}
catch (Exception)
{ }
}
为什么不把它放在Form Load事件中而不是Text Changed:
private void Form1_Load(object sender, EventArgs e)
{
try
{
SqlDataReader datareader = qu.GetValue("English_Short");
AutoCompleteStringCollection local = new AutoCompleteStringCollection();
if (datareader.HasRows == true)
{
while (datareader.Read())
local.Add(datareader["English_Short"].ToString());
}
txt_Name.AutoCompleteMode = AutoCompleteMode.Suggest;
txt_Name.AutoCompleteSource = AutoCompleteSource.CustomSource;
txt_Name.AutoCompleteCustomSource = local;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}