如何将事件从一个类传递给子对象?
本文关键字:对象 一个 事件 | 更新日期: 2023-09-27 18:17:23
我有一个名为TextBoxPlus
的类,它继承自UserControl
并持有多个常规TextBox
实例,同时也扩展了它们的功能。我有TextBoxPlus
的实例在我的Windows窗体,正在调用TextChanged
事件。我所遇到的问题是,我希望它传递到TextBoxPlus
中TextBox
实例之一的TextChanged
事件。我不想让TextBox
公开,所以我可能会看一个override
,但我不确定如何做到这一点,因为这不起作用:
protected override void TextChanged(EventArgs e)
{
this.textbox.TextChanged(e);
}
显然是由于TextChanged
事件没有调用方法。我怎样才能做到这一点呢?
在包含类上定义一个事件,其实现将其处理程序添加到被包含对象的事件中:
public event EventHandler TextChanged
{
add
{
textbox.TextChanged += value;
}
remove
{
textbox.TextChanged -= value;
}
}