Код: Выделить всё
public delegate void _dispSolutionEvents_OpenedEventHandler();
event _dispSolutionEvents_OpenedEventHandler Opened;
< /code>
Событие происходит из библиотеки, поэтому я не могу ее изменить.
перегрузка iobservable.fromevent < /code>, что должно сделать, у него есть следующие Подпись: < /p>
public static IObservable FromEvent
( Action addHandler
, Action removeHandler
)
< /code>
Поэтому я попытался преобразовать событие, как это: < /p>
var opened = Observable.FromEvent
( h => _SolutionEvents.Opened += h
, h => _SolutionEvents.Opened -= h
);
не может неявно преобразовать тип 'System.action' в 'Envdte._dispsolutionEvents_openedEventhandler'.
Код: Выделить всё
_SolutionEvents.Opened += new _dispSolutionEvents_OpenedEventHandler(h)public static IObservable FromEvent
( Func conversion
, Action addHandler
, Action removeHandler
)
< /code>
Это позволяет преобразовать действие в обработчик событий, но, похоже, работает только с Teventargs < /code>. < /p>
Отсутствует ли Rx подходящая перегрузка или я что -то упускаю?
Подробнее здесь: https://stackoverflow.com/questions/358 ... -fromevent
Мобильная версия