tags:

views:

84

answers:

2

Hello, I was just wondering what the actual difference, advantage and disadvantages of creating a new event handler, vs assigning it directly to the event ?

_gMonitor.CollectionChanged += new NotifyCollectionChangedEventHandler(OnCollectionChanged);

vs

_gMonitor.CollectionChanged += OnCollectionChanged;

Thanks, Raul

+1  A: 

In C# 2.0 and above, they are identical. In C# 1.2 (the one that shipped with .NET 1.1), only the first syntax (with new) compiles ;-p

The second syntax saves key presses, but VS intellisense will typically suggest the first. Ultimately, it makes very little difference. I generally use the second syntax in code-samples online, simply because it avoids going over the (narrow) column width!

Marc Gravell
A: 

The compiler has enough information available to make the new EventHandler effectively syntactic sugar.

It knows that you are attaching an event handler to an event, as only += and -= are valid at this point, so you don't need tell it what to do.

ChrisF