none
Свойство AcceptButton. Не назначить кнопку по умолчанию. RRS feed

  • Вопрос

  • Всем привет!

    Создал новую форму, разместил на ней три кнопки.

    Но, какую бы кнопку я не присвоил свойству AcceptButton, при нажатии ENTER всё равно срабатывает первая кнопка, хотя в конструкторе эта кнопка выделяется цветом.

    Однако, если я присваиваю какую-либо кнопку свойству CancelButton, то при нажатии клавиши ESCAPE срабатывает нужная кнопка.

    17 февраля 2013 г. 13:49

Ответы

  • Если на форме находятся ТОЛЬКО 3 кнопки, то при нажатии на Enter будет выполняться событие той, на которой стоит фокус - это будет та кнопка, у которой наименьший TabIndex. Если же вы положите на форму еще один элемент и присвоите ему TabIndex = 0, то по Enter будет выполняться событие именно той кнопки, которую вы задали в AcceptButton
    • Изменено Varlamov Oleg 17 февраля 2013 г. 14:08
    • Предложено в качестве ответа LXGDARKEditor 17 февраля 2013 г. 14:29
    • Помечено в качестве ответа Весельчак-У 17 февраля 2013 г. 14:38
    17 февраля 2013 г. 14:07

Все ответы

  • Если на форме находятся ТОЛЬКО 3 кнопки, то при нажатии на Enter будет выполняться событие той, на которой стоит фокус - это будет та кнопка, у которой наименьший TabIndex. Если же вы положите на форму еще один элемент и присвоите ему TabIndex = 0, то по Enter будет выполняться событие именно той кнопки, которую вы задали в AcceptButton
    • Изменено Varlamov Oleg 17 февраля 2013 г. 14:08
    • Предложено в качестве ответа LXGDARKEditor 17 февраля 2013 г. 14:29
    • Помечено в качестве ответа Весельчак-У 17 февраля 2013 г. 14:38
    17 февраля 2013 г. 14:07
  • Спасибо!

    Я этого не знал.

    Я использовал пример с сайта MSDN, где на форму добавляются две кнопки и больше ничего, свойству AcceptButton присваивается button1. Он тоже работает только с кнопкой button1, там не написано, что с кнопкой button2 программа корректно работать не будет.

    17 февраля 2013 г. 14:51