OnLoad называют при вызове основы. Onload (e) в методе Onload

У меня есть представление (userControl), и я переопределяю, это - методы OnLoad и OnLayout. Когда представление закрывается, метод OnLayout выполняется и вызов для базирования. OnLayout (e) запускают метод OnLoad.

Что заставляет OnLoad быть названным и как я могу избежать этого поведения?С уважением.

1
задан DevTun 24 May 2010 в 17:17
поделиться

2 ответа

Спасибо Гансу за ваш ответ,

Похоже, что макет Windows Forms вызывает макет в элементах управления из-за вызова dispose. в любом случае, как обходной маневр, я окружаю call base.OnLayout () SuspendLayout () и ResumeLayout.

С уважением.

0
ответ дан 3 September 2019 в 00:19
поделиться

OnLoad вызывается снова, потому что base.OnLayout() использует свойства, которые пересоздают окно. Это нехорошо, вам обязательно нужно это исправить. Вам нужно выяснить, почему OnLayout вызывается, когда элемент управления утилизируется. Установите точку останова на переопределении OnLayout и проверьте стек вызовов. Если вы не можете разобраться, опубликуйте это в своем вопросе.

2
ответ дан 3 September 2019 в 00:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: