c# - 在自动完成文本框 C# 中按回车键后关闭下拉菜单

标签 c# winforms autocomplete textbox

我有一个带有自动完成模式的文本框。当我输入任何值时,下拉菜单会出现建议项目,我使用向下箭头键向下滚动,当我按下回车键时,所选项目被文本框带走,但下拉菜单没有关闭。

如果我使用鼠标单击选择建议项中的任何值,所选项目将由文本框获取并且下拉列表将自动关闭。我如何在按下 Enter 后实现此行为?

我找不到与此问题相关的任何属性。

AutoCompleteStringCollection ac = new AutoCompleteStringCollection();
ac.AddRange(this.Source());

if (textBox1 != null)
{
    textBox1.AutoCompleteMode = AutoCompleteMode.Suggest;
    textBox1.AutoCompleteCustomSource = ac;
    textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
}

最佳答案

我发现了问题。

这是因为在 textBox1_TextChanged 事件上。我有一个密码

this.AcceptButton=button1;

为了解决,我删除了上面的行。

对于事件按钮,我使用了以下代码

    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyData == Keys.Enter)
        {
            button1_Click(sender, e);
        }
    }

关于c# - 在自动完成文本框 C# 中按回车键后关闭下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35383353/

相关文章:

c# - WPF:在代码隐藏中引用应用程序范围的资源

c# - 创建一个类型化的异步任务

c# - 将组合框添加到 WinForms 中的 GridView

django - django admin中的备用用户选择界面,以减少大型站点上的页面大小?

jquery - 从自动完成中选择时重定向用户?

c# - 在设置和部署中预编译网站

C# 数据表问题

c# - 是什么导致 Winforms 默默地丢弃未处理的异常(没有 try/Catches)?

.net - 正确的方法来使Winforms UI阻塞对话框,直到出现一些非用户驱动的事件条件?

html - 在不禁用自动完成的情况下禁用 Chrome 中的表单自动填充