Imagine an event

private event EventHandler SampleEvent;

which should be raised. I know 3 ways to do this, but I don't get the difference between two of them which are

SampleEvent(this, EventArgs.Empty);

and

SampleEvent.Invoke(this, EventArgs.Empty);

What is the difference between those two and what advantages and disadvantages does either method have?

有帮助吗?

解决方案

Since event is represented by a delegate internally, Invoke method is present there. Omitting it in calling is just a compiler trick to have a more readable code.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top