Ereignis ohne EventArgs mit Observable.FreMevent konvertierenC#

Ein Treffpunkt für C#-Programmierer
Guest
 Ereignis ohne EventArgs mit Observable.FreMevent konvertieren

Post by Guest »

Ich kämpfe mit der Konvertierung des folgenden Ereignisses in einen iOBServable < /code>: < /p>

Code: Select all

public delegate void _dispSolutionEvents_OpenedEventHandler();
event _dispSolutionEvents_OpenedEventHandler Opened;
< /code>

Das Ereignis stammt aus einer Bibliothek, sodass ich es nicht ändern kann. Signatur: < /p>

public static IObservable FromEvent
( Action addHandler
, Action removeHandler
)
< /code>

Ich habe also versucht, das Ereignis wie folgt zu konvertieren: < /p>

var opened = Observable.FromEvent
( h => _SolutionEvents.Opened += h
, h => _SolutionEvents.Opened -= h
);
Aber der Compiler mag _SolutionEvents.opened += H und _SolutionEvents.opeed += H weil


kann den Typ 'System.Action' nicht implizit konvertieren 'Envdte._dispolutionEvents_openedEventhandler'. < /P>
< /blockquote>

Ich glaube nicht

Code: Select all

_SolutionEvents.Opened += new _dispSolutionEvents_OpenedEventHandler(h)
Da das Entfernen dann nicht funktioniert, weil ich eine andere Instanz habe, oder? Signatur: < /p>

public static IObservable FromEvent
( Func conversion
, Action addHandler
, Action removeHandler
)
< /code>

Dies ermöglicht die Umwandlung der Aktion in einen Ereignishandler, aber es scheint nur mit TeVentargs < /code> zu funktionieren. /> fehlt Rx eine geeignete Überladung oder fehlt mir etwas?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post