Я часто занимаюсь такими вещами: -
EventHandler eh = null; //can't assign lambda directly since it uses eh
eh = (s, args) =>
{
//small snippet of code here
((SomeType)s).SomeEvent -= eh;
}
variableOfSomeType.SomeEvent += eh;
В основном, я хочу только привязать обработчик события для прослушивания одного снимка из события, после этого я больше не хочу оставаться прикрепленным. Довольно часто, что "snippert of code" - это всего лишь одна строка.
Мой ум немного онемел, я уверен, что я должен что-то сделать, поэтому мне не нужно повторять все эти накладные расходы. Имейте в виду, что EventHandler
может быть EventHandler<T>
.
Любые идеи, как я могу убрать повторяющуюся часть кода и просто оставить фрагмент в Лямбде?