![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| CyraxZ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 10.12.2006 Репутация: нет Всего: нет |
Имеется иерархия окон: родительское W, дочернее W1, у дочернего ещё дочернее W2 и т.д.
Закрываю родительское окно W и наблюдаю за генерацией событий FormClosing (точка останова в обработчике FormClosing). Событие FormClosing генерируется только для закрываемого окна W (CloseReason = UserClosing) и его непосредственного дочернего W1 (CloseReason = OwnerClosing). Для W2, W3 и т.д. не генерируется, тем не менее они тоже закрываются (каскадно - не каскадно, не знаю). Если закрыть произвольное окно иерархии Wi, то событие FormClosing будет сгенерировано для W(i) и W(i+1) и всё... В чём дело ? Каждое дочернее окно я связываю с родительским через свойство Owner (если это имеет значение)... Это сообщение отредактировал(а) CyraxZ - 27.8.2007, 11:48 |
|||
|
||||
| Secret |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 14.8.2007 Репутация: нет Всего: нет |
Мне кажется что єто связано с тем как в C# происходит наследования.
То есть если есть объект А, от него вывести объект В, а от В, в свою очередь С, то будем иметь такие соотношения иерархии:
З.Ы. это только мои предположения, потому если я не прав, то прошу меня поправить |
|||
|
||||
| CyraxZ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 10.12.2006 Репутация: нет Всего: нет |
Нет, кто-нибудь скажет, действительно описанная ситуация имеет место или это я что-то не так делаю ?
|
|||
|
||||
| CyraxZ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 10.12.2006 Репутация: нет Всего: нет |
Неужели все в отпуск ушли... В конце августа...
|
|||
|
||||
| CyraxZ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 10.12.2006 Репутация: нет Всего: нет |
У кого-то крыша едет...
|
|||
|
||||
| CyraxZ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 10.12.2006 Репутация: нет Всего: нет |
Ну так нужно разобраться... Что за глюк ?
|
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
А это как такое может быть, что 3 формы вложены в друг друга, они MDI-шные ? Может обычные события WinForms просто не заточены под сложные варианты и генерируются не во всех случаях.
-------------------- ![]() |
|||
|
||||
| CyraxZ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 10.12.2006 Репутация: нет Всего: нет |
Нет, они отдельные (SDI). Только создание каждой последующей ("дочерней") формы происходит из текущей. Т.е. для 3 форм: в методах формы А создаётся и запускается самостоятельная форма B, в методах формы B создаётся и запускается самостоятельная форма C, и т.д. И естественно, при закрытии формы A предварительно каскадно закрываются сначала C, затем B и, наконец, А. FormClosing в данном случае генерируется только для форм B и A (т.е. для формы, закрываемой пользователем, (А) и её непосредственной "дочерней" формы (B)). Это сообщение отредактировал(а) CyraxZ - 11.9.2007, 22:13 |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |