Błąd kompilatora CS0079
Zdarzenie "event" może pojawić się tylko po lewej stronie += lub -=
Zdarzenie zostało wywołane niepoprawnie. Aby uzyskać więcej informacji, zobacz Zdarzenia i delegaty.
Poniższy przykład generuje plik CS0079:
// CS0079.cs
using System;
public delegate void MyEventHandler();
public class Class1
{
private MyEventHandler _e;
public event MyEventHandler Pow
{
add
{
_e += value;
Console.WriteLine("in add accessor");
}
remove
{
_e -= value;
Console.WriteLine("in remove accessor");
}
}
public void Handler()
{
}
public void Fire()
{
if (_e != null)
{
Pow(); // CS0079
// try the following line instead
// _e();
}
}
public static void Main()
{
Class1 p = new Class1();
p.Pow += new MyEventHandler(p.Handler);
p._e();
p.Pow += new MyEventHandler(p.Handler);
p._e();
p._e -= new MyEventHandler(p.Handler);
if (p._e != null)
{
p._e();
}
p.Pow -= new MyEventHandler(p.Handler);
if (p._e != null)
{
p._e();
}
}
}
Współpracuj z nami w serwisie GitHub
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: