Compartilhar via


CS0072 de erro do compilador

Mensagem de erro

'eventos': não é possível substituir; 'método' não é um evento

An evento pode substituir apenas outro evento.Para obter mais informações, consulte Eventos (Guia de programação do C#).

O exemplo a seguir gera 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()
   {
   }
}