C# 如何在两个C类之间分解事件,因为事件只能在同一个类中触发它';什么是定义?
假设我有A班和B班的:C# 如何在两个C类之间分解事件,因为事件只能在同一个类中触发它';什么是定义?,c#,.net,C#,.net,假设我有A班和B班的: public event CustomEvent1 event1 public event CustomEvent2 event2 由于事件只能在定义的同一类中触发,我如何创建a&B将继承事件的类C?在调用事件的C类中创建OnCustomEvent方法。然后可以从A和B类调用该方法 您可以在框架中查看任何使用事件的webform或winform控件作为此解决方案的示例。在调用事件的C类中创建OnCustomEvent方法。然后可以从A和B类调用该方法 您可以在框架中查看
public event CustomEvent1 event1
public event CustomEvent2 event2
由于事件只能在定义的同一类中触发,我如何创建a&B将继承事件的类C?在调用事件的
C
类中创建OnCustomEvent
方法。然后可以从A
和B
类调用该方法
您可以在框架中查看任何使用事件的webform或winform控件作为此解决方案的示例。在调用事件的
C
类中创建OnCustomEvent
方法。然后可以从A
和B
类调用该方法
您可以在框架中查看任何使用事件的webform或winform控件作为此解决方案的示例。请参阅请参阅在这种情况下,您应该在类C中定义如下方法
protected void OnEventName(object sender, EventArgs e)
{
CustomEventC evt = EventC;
if (evt != null)
evt(this, EventArgs.Empty);
}
因为它是一个受保护的方法,所以从类a和类B中可以看到它。在这种情况下,您应该在类C中定义一个方法,如
protected void OnEventName(object sender, EventArgs e)
{
CustomEventC evt = EventC;
if (evt != null)
evt(this, EventArgs.Empty);
}
由于它是一个受保护的方法,它将从类a和B中可见。只有一个可以从派生类调用的
RaiseEvent
函数。只有一个可以从派生类调用的RaiseEvent
函数。