窗体有个隐藏的Deactivate事件,
Activate、Deactivate 事件Activate -当一个对象成为活动窗口时发生。Deactivate -当一个对象不再是活动窗口时发生。
So,直接在设计页面中订阅这个事件,事件里把窗体close就可以了。
而弹出窗体位置一直变化,只需加一句:form.StartPosition = FormStartPosition.Manual;就可以了