Compiler Error CS0072
'event' : cannot override; 'method' is not an event
An event can only override another event. For more information, see Events (C# Programming Guide).
The following sample generates CS0072:
// CS0072.cs
delegate void MyDelegate();
class Test1
{
public virtual event MyDelegate MyEvent;
public virtual void VMeth()
{
}
public void FireAway()
{
if (MyEvent != null)
MyEvent();
}
}
class Test2 : Test1
{
public override event MyDelegate VMeth // CS0072
// uncomment the following lines to resolve
// public override event MyDelegate MyEvent
{
add
{
VMeth += value;
// MyEvent += value;
}
remove
{
VMeth -= value;
// MyEvent -= value;
}
}
public static void Main()
{
}
}