Нажатие клавиш в приложении Winforms вызывает неожиданное закрытие окна - PullRequest
1 голос
/ 01 апреля 2010

У меня возникла странная проблема, которая возникла недавно:

Всякий раз, когда я вводю текст, даже один символ, в текстовое поле в любой форме в моем приложении, это приводит к закрытию формы и ее родителя. Я проверил следующее:

  • Ошибочные / неправильно назначенные обработчики событий, которые могут интерпретировать нажатие клавиши как Отмена формы
  • Я использую keypreview в нескольких окнах, но отладка показывает, что это не является причиной
  • Бывает в любой форме заявки
  • Случается даже с совершенно новыми текстовыми полями, опущенными на форму
  • Попытка удаления объявления WithEvents из объявлений текстового поля (VB.NET)
  • Результатом является DialogResult.Cancel, когда я нарушаю код после Show или ShowDialog
  • В формах не используются свойства AcceptButton или CancelButton (не установлены)
  • Примечание: я изменяю большую кодовую базу с большим количеством кода, который мне еще предстоит потрогать

Что еще может быть причиной этого странного поведения?

Ответы [ 2 ]

3 голосов
/ 01 апреля 2010
  • Нажмите Ctrl + D, E (Отладка, Исключения) и скажите Visual Studio прерывать работу при возникновении любого исключения, а затем посмотрите, есть ли исключения в работе.

  • Нажмите Ctrl + D, N (Отладка, Новая точка останова, Перерыв в функции) и установите точку останова на System.Windows.Form.OnClosing, затем посмотрите на стек вызовов. (Либо переопределите OnClosing в главной форме, а затем установите в ней точку останова)

1 голос
/ 23 сентября 2011

Случайным образом для DialogResult кнопки установлено значение «Отмена». После возврата к значению по умолчанию «Нет» проблема решена. Это моя история.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...