Простой код C # winform app (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);
}
}
Работает нормально, если я набираю какой-то текств текстовом поле и нажмите Enter, он открывает мой веб-браузер по умолчанию и переводит меня на сайт.
Мне нужно изменить текстовое поле на 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, он подходит к Джону, но теперь, когда я нажимаю enter, он не запускает событие KeyPress.Он просто сидит там.Я попытался установить точку останова, и когда я набираю первую букву J, запускается событие KeyPress.Затем, когда я выбираю строку «Jon» из источника автозаполнения, а затем нажимаю «Ввод», событие больше не запускается.
Confused:).