私はeventhanler持っている:パラメータ少ないデリゲート
public delegate void OnSizeEventHandler();
をそして、あなたが見ることができるように、私はそのタイプ
CustomObject.OnSize += OnResize;
のイベントをトリガーするクラスを持っていますそれは単なるパラメータのないデリゲートです。
私のような反応性の拡張機能から、それを使用したい:
var eventAsObservable = Observable.FromEvent<OnSizeEventHandler>(
x => CustomObject.OnSize += x,
x => CustomObject.OnSize -= x);
私はこのエラーを取得する:
Error CS0029 Cannot implicitly convert type 'System.Action<CustomObject.OnSizeEventHandler>' to 'CustomObject.OnSizeEventHandler'
は私が間違って何をしているのですか?それはEventHandlersでかなりうまく動作しますが、カスタムイベントになると、それを動作させる方法を理解することがとても難しいです。
ありがとうございました。
こんにちは、私はできる限り、私はこのコンベンションを使用しますが、この代理人は私が変更できないライブラリからのものです。あなたが提案した答えはコンパイルされても例外がスローされます。追加情報:シグネチャまたはセキュリティの透過性がデリゲート型のものと互換性がないため、ターゲットメソッドにバインドできません。パラメータ付きのデリゲートが必要で、デリゲートにはパラメータがありません。 – toroveneno
@FernandoUrkijoCereceda:デリゲートが質問の中であなたのコントロールから外れていると述べると便利でした。例外についての恥 - 編集します。 –