Zawsze przypisałem funkcje obsługi zdarzeń podobne do tej, kierując się automatycznym uzupełnianiem IntelliSense.Różnice w przypisywaniu procedur obsługi zdarzeń C#?
RangeSelector.RangeChanged += new EventHandler(RangeSelector_RangeChanged);
Niedawno zauważyłem, że jeden z moich kolegów robi to w ten sposób.
RangeSelector.RangeChanged += RangeSelector_RangeChanged;
Obie metody są poprawne pod względem składni, kompilują się i zachowują zgodnie z oczekiwaniami.
Jakie są różnice, zalety lub wady tych metod. Czy skutkują tym samym kodem IL, czy też jest jakaś subtelna różnica, o której muszę wiedzieć?
Ponadto, jeśli zmienić podpis zdarzeń, trzeba tylko zmienić kod w dwóch miejscach, deklarację imprez i sam program obsługi, ale nie w miejscu, w którym przypiszesz/cofniesz obsługę. –
+1, jednak jako "powinien być preferowany", który jest wątpliwy. Jeśli wpisanie + = a następnie naciśnięcie przycisku zakładki dwukrotnie wygeneruje nowszą składnię, zgodzę się. Obecnie najszybszym sposobem dodania obsługi zdarzeń jest wygenerowanie starszej składni za pomocą pomocy IDE. – AnthonyWJones
@Matthew Scharley: jeśli użyjesz wbudowanej obsługi programu Visual Studio do refaktoryzacji, nie musisz się martwić o takie rzeczy. –