Недавно мне стало интересно, есть ли какая-нибудь существенная разница между этим кодом:
public event EventHandler<MyEventArgs> SomeEvent;
И этим:
public delegate void MyEventHandler(object sender, MyEventArgs e);
public event MyEventHandler SomeEvent;
Они оба делают одно и то же, и я не знаю Я не мог сказать никакой разницы. Хотя я заметил, что большинство классов .NET Framework используют делегат настраиваемого обработчика событий для своих событий. Есть ли для этого конкретная причина?