gpt4 book ai didi

c# - AutoCompleteSource 停止 KeyPress 事件?

转载 作者:可可西里 更新时间:2023-11-01 12:09:03 24 4
gpt4 key购买 nike

简单代码 C# winform 应用程序(visual studio 2010):

这里有一个带有一个文本框的简单表单是一个 keyPress 事件:

 private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
// The keypressed method uses the KeyChar property to check
// whether the ENTER key is pressed.


if (e.KeyChar == (char)Keys.Return)
{
Process.Start("http://yahoo.com", null);
}

}

如果我在文本框中输入一些文本并按回车键,效果很好,它会打开我的默认网络浏览器并将我带到一个站点。

我需要将文本框更改为 autocompletemode = suggestappend 和 autocompletesource = customsource。然后我像这样填充它:

  private void Form1_Load(object sender, EventArgs e)
{
AutoCompleteStringCollection s = new AutoCompleteStringCollection();
s.Add("Jon ");
s.Add("2 Jon");
textBox1.AutoCompleteCustomSource = s;
}

当我输入 J 时,它会自动完成,但现在当我按下回车键时,它不会触发 KeyPress 事件。它只是坐在那里。我尝试放置一个断点,当我输入第一个字母 J 时,它会触发 KeyPress 事件。然后,当我从自动完成源中选择字符串“Jon”,然后我按下回车键时,事件不再触发。

困惑:).

最佳答案

由于自动完成建议下拉列表,似乎正在处理 Return 键按下 - 您始终可以使用在这种情况下仍会触发的 KeyDown 事件。

关于c# - AutoCompleteSource 停止 KeyPress 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3452523/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com