Как кнопки вверх и вниз клавиатуры управляют порядком фокусировки?
Я столкнулся с проблемой, связанной с кнопкой вверх и кнопкой вниз, чтобы контролировать фокус.
Например, есть окно Form1, которое содержит listbox и button1.
Внутри события button1 нажмите кнопку Form2. выскакивать
1., просто запустите программу, работает Form1, затем на этот раз окно фокусируется на списке
2. Если я нажму кнопку 1, всплывет форма 2, а затем закроется, фокус окна будет направлен на кнопку 1.
3.в этот момент я хочу нажать кнопку клавиатуры вверх или вниз, чтобы при выключении Form2 фокус сразу же был направлен на список. Что же мне делать?
Поскольку я обнаружил, что настройки последовательности клавиш tab, настройки клавиш Tab, похоже, не связаны с кнопками клавиатуры вверх и вниз, хотя все они могут управлять фокусом.
Итак, где я могу установить порядок фокусировки для кнопок вверх и вниз и как программировать?
Что я уже пробовал:
я попытался установить клавишу tab и использовать событие keydown для обработки фокуса.
private void Form1_KeyDown(object sender, KeyEventArgs e) { switch (e.KeyCode) { case Keys.Up: this.listboxPoints.Focus(); break; case Keys.Down: this.listboxPoints.Focus(); break; default: break; } }
Graeme_Grant
Зачем делать это для перехода от контроля к контролю? Это не интуитивно! Отраслевой стандарт TAB = Next; SHIFT-TAB = previous
Вверх / вниз / страница вверх / страница вниз / Начало / Конец не используется для навигации, списков и строк в элементе управления.
Единственный раз, когда я вижу, что вам нужно реализовать свою собственную навигацию, - это если она находится в пользовательском элементе управления, таком как холст для рисования...
BillWoodruff
Вы показываете Form2 modaly ?