我有一个继承自UserControl
的课程:
public partial class MyView : System.Windows.Forms.UserControl
我想处理当用户点击右上角的X时发生的事件。也许是Form.Closing?但我不认为这是设计师的选择。它是什么事件?
编辑:
答案 0 :(得分:1)
class SomeControl : UserControl
{
Form _owner;
public SomeControl()
{
}
protected override void OnVisibleChanged(EventArgs e)
{
base.OnVisibleChanged(e);
if (Visible)
{
_owner = FindForm();
//_owner = ParentForm;
_owner.FormClosing += _owner_FormClosing;
_owner.FormClosed += _owner_FormClosed;
}
}
private void _owner_FormClosed(object sender, FormClosedEventArgs e)
{
throw new NotImplementedException();
}
private void _owner_FormClosing(object sender, FormClosingEventArgs e)
{
Hide();
_owner.FormClosing -= _owner_FormClosing;
_owner.FormClosed -= _owner_FormClosed;
Parent.Controls.Remove(this);
_owner = null;
}
}