[英]Catch event when remove user control from panel
我写了一个用户控件。 我有一个面板,当我点击用户控件中的按钮时,它会被添加到面板中。 我为用户控件创建了一个点击事件。 单击时,用户控件将从面板中删除。 我想要求在删除用户控件时捕获事件,我应该使用哪个事件并将其用于面板或用户控件。 比如我添加了一个标签,添加用户控件时标签会发生变化,删除时标签也会发生变化。 对不起,我的英语不好。
您最有可能发现有帮助的事件是Control
的ControlRemoved
事件。
这在文档中描述,因此:
从 Control.ControlCollection 中删除控件时发生。
在您的示例的情况下,您将为此添加一个事件处理程序到Panel
。 假设您的面板名为panel1
(请不要命名),这将是这样的:
// In initialisation code somewhere
panel1.ControlRemoved += panel1_ControlRemoved;
private void panel1_ControlRemoved(object sender, ControlEventArgs e)
{
// Do something
...
// Note: removed control is referenced by e.Control
}
任何时候从Panel
删除控件都会引发此Panel
。
添加控件时还有一个伴随事件,名为ControlAdded
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.