Compilerfehler CS0070

Aktualisiert: November 2007

Fehlermeldung

Das Ereignis "Ereignis" kann nur auf links von += oder -= stehen (es sei denn, es wird innerhalb des Typs "Typ" verwendet).
The event 'event' can only appear on the left hand side of += or -= (except when used from within the type 'type')

Außerhalb der Klasse, in der es definiert ist, kann ein Ereignis nur Verweise addieren oder subtrahieren. Weitere Informationen finden Sie unter Ereignisse (C#-Programmierhandbuch).

Im folgenden Beispiel wird CS0070 generiert:

// CS0070.cs
using System;
public delegate void EventHandler();

public class A
{
   public event EventHandler Click;

   public static void OnClick()
   {
      EventHandler eh;
      A a = new A();
      eh = a.Click;
   }

   public static void Main()
   {
   }
}

public class B
{
   public int Foo ()
   {
      EventHandler eh = new EventHandler(A.OnClick);
      A a = new A();
      eh = a.Click;   // CS0070
      // try the following line instead
      // a.Click += eh;
      return 1;
   }
}

Community-Beiträge

Anzeigen: