2011-12-27 59 views
2

设置Windows.Forms.TextBox的AutoCompleteCustomSource属性时,在输入文本框中会显示变体列表。 可以使用鼠标指向并点击其中一个变体或使用上下按钮进行选择,然后按Enter键。 您也可以按下输入,只要你喜欢。在文本框中处理自动完成。与按下输入不同

问题的要点是,当使用鼠标进行选择时,KeyDown(KeyUp,KeyPress)事件会像在键盘上按下Enter键一样提高。 我怎样才能确定真正发生了什么,并使用鼠标curor处理选择并按Enter键不同?

回答

0

我通过跟踪文本框的鼠标和键盘事件来解决此问题。由此产生的功能类似于浏览器地址栏。我现在无法到达源代码,但它是围绕MouseDown,MouseUp,KeyDown,KeyUp等基本逻辑将其值存储在变量中的。

+0

请挖掘细节。我尝试过那些事件,但是当点击autosuggestions列表时,文本框没有生成鼠标事件(MouseUp,MouseDown,MouseClick)。 – Srv19 2012-01-18 08:22:10

+0

那些鼠标事件对我来说有点神秘。很可能它们被临时可见列表控件占用(据我所知,我们无法控制)。 – Srv19 2012-01-18 08:23:34