イベントが設定されてるかどうかを知りたいif文のエラーが原因が知りたい。
Main関数部のコメント部なのですが、イベントハンドラー?がnullだったらイベントが設定されていなのでコメント部のようなコードを書くと判明しますと参考書にあるのですがエラーになってしまいそのエラー原因もわからず困っています、教えていただけますでしょうか。?
[イベント 'TestClass.ThreeEvent' は、+= または -= の左側にのみ表示されます (型 'TestClass' 内で使用する場合を除きます) ConsoleApp3
]
using System;
delegate void SampleEventHandler();
class TestClass
{
public event SampleEventHandler ThreeEvent = delegate { };
//public event SampleEventHandler ThreeEvent = () => { };
public void OnThreeEvent()
{
for(int i=1; i<=200; i++)
{
Console.WriteLine(i);
if(i % 3 == 0)
{
ThreeEvent();
}
}
}
}
class Program
{
public static void Main()
{
TestClass t = new TestClass();
t.ThreeEvent += delegate { Console.WriteLine("xx"); };
/*ここです。*/
if (t.ThreeEvent != null)
{
Console.WriteLine("");
}
//t.ThreeEvent += () => Console.WriteLine("xx");
t.OnThreeEvent();
Console.ReadKey();
}
}