我已经定义了一个Foo
类,并在Bar
类中使用了这个类,并带有一个事件处理程序:
public class Bar
{
public Bar()
{
Foo foo = new Foo();
foo.my_custom_event += my_event_handler;
}
public void my_event_handler()
{
// do work here
}
}
这完美无缺。但我需要在Foo
类中定义一个方法,当我向my_custom_event
添加一个事件处理程序时会触发该方法,如:
public class Foo
{
...
public/private void my_event_handler_adder(target_function)
{
functions_that_are_fired_on_my_custom_event.Append(target_function);
}
}
有没有办法定义这样的加法器方法?
答案 0 :(得分:0)
class Foo
{
private EventHandler explicitEvent;
public event EventHandler ExplicitEvent
{
add
{
explicitEvent += value;
FireNeededMethodHere();
}
remove
{
explicitEvent -= value;
}
}
}