Autocomplete Combobox auf onkeypress-Ereignis frisst die Enter-Taste
Ich habe eine ComboBox mit AutoCompleteMode = suggest
und behandeln Sie das KeyPress-Ereignis wie folgt:
private void searchBox_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Return)
{
//do stuff
}
}
Jedoch, es nicht zu fangen, die Enter
- Taste. Es fängt alles anderes, da die AutoVervollständigen-dropdown funktioniert perfekt.
Ich habe auch versucht, die Anregung, die hier angeboten werden : http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/2db0b540-756a-4a4f-9371-adbb92409806, legen Sie das Formular KeyPreview
- Eigenschaft auf true und setzen Sie einen Haltepunkt in dem Formular KeyPress-event-handler:
private void Form_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = false;
}
Aber auch die form - handler nicht fangen Sie die enter-Taste!
Irgendwelche Vorschläge?
(Wenn ich deaktivieren Sie die AutoVervollständigen, es fängt die Enter-Taste)
InformationsquelleAutor Victor Parmar | 2011-01-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
Unterschied zwischen KeyDown und KeyPress
In Ihrem Fall das beste, was Sie tun können, ist die Verwendung KeyDown-Ereignis.
Andere interessante Sache über das KeyPress-Ereignis ist: es fängt auch Enter-Taste mit autocompete auf, wenn die combobox hat keine Artikel! 🙂
Diese Lösung funktioniert auch für Delphi und der
OnKeyPress
vsOnKeyDown
Veranstaltungen.InformationsquelleAutor Shuhel Ahmed