В чем проблема, когда декларирования событий с действиямиразница между действиями события и EventHandler событий <EventArgs>
public interface ISomething
{
event Action MyEventName;
}
или
public interface ISomething
{
event Action<bool> MyBoolEventName;
}
вместо другого варианта предыдущего кода декларирования события с EventHandler и EventArgs
public interface ISomething
{
event EventHandler<EventArgs> MyEventName;
}
или
public class EventArgsWithBool : EventArgs
{
private readonly bool someValue;
public EventArgsWithBool (bool someValue)
{
this.someValue = someValue;
}
public bool SomeValue
{
get { return this.someValue; }
}
}
public interface ISomething
{
event EventHandler<EventArgsWithBool> MyBoolEventName;
}
Мои мысли:
Обе версии работают хорошо для меня, и я думаю, что первый является более удобным для чтения/выглядит более прямой до точки. Но некоторые разработчики говорят, что лучше использовать второй синтаксис с EventArgs, не имея возможности дать хорошие технические причины (кроме того, что они знают второй синтаксис).
Есть ли какие-либо технические проблемы при первом использовании?
http://stackoverflow.com/questions/1431359/event-action-vs-event-eventhandler –