У меня есть usercontrol, размещенный на форме во время выполнения. Я переживаю UserControl_MouseLeave после FormClosing.UserControl MouseLeave происходит после FormClosing
Мне интересно, должно ли это происходить при нормальных обстоятельствах.
Чтобы проверить, будет ли это происходить нормально (а не только в моем огромном проекте), я настроил тестовый проект с крошечным пользовательским контролем (только с определенной backcolor), и я не смог получить UserControl_MouseLeave событие после получения события Form_Closing. Это заставляет меня задаться вопросом, может ли мой другой пользовательский контроль просто очень долго выгружаться, поэтому сразу не уходит и, таким образом, даже остается в живых после события FormClosing.
К сожалению, я не нашел информации о том, когда могут произойти события.
Кто-нибудь знает, нормально ли это?
Это совершенно нормально, просто подумайте. В событии FormClosing окно еще не закрыто. И его можно отменить. Итак, конечно, мышь фактически не оставила ваш пользовательский контроль. Это происходит не позже, когда окно действительно закрывается. Является ли пожар до или после того, как FormClosing зависит от того, как вы закрываете окно. Когда вы используете мышь, тогда, конечно, он срабатывает первым, вы перемещаете его. Когда вы, скажем, нажмете Alt + F4, затем он загорится. –