デリゲート '<デリゲート名>' と互換性のあるシグネチャを持つアクセス可能なメソッド '<プロシージャ名>' がありません: <サブエラー リスト>

代入ステートメントによってプロシージャのアドレスがデリゲート変数に代入されましたが、シグネチャが一致するプロシージャのバージョンをコンパイラが見つけられません。

コードがプロシージャのアドレスを使用する場合、デリゲートとパラメーター リストが一致するプロシージャのバージョンをコンパイラは見つけようとします。 プロシージャがオーバーロードされたいくつかのバージョンで定義されている場合、コンパイラはシグネチャが一致する単一のバージョンを見つけようとします。 詳細については、「 Overload Resolution」を参照してください。

コンパイラは、シグネチャが一致するプロシージャのバージョンを見つけられない場合に、このエラーを生成します。 たとえば、プロシージャまたはデリゲートがジェネリックで、これに型引数が渡され、他のシグネチャと一致しないシグネチャが提供される場合に発生します。

エラー ID: BC30950

このエラーを解決するには

  1. プロシージャまたはデリゲートを再定義し、パラメーター リストが一致するようにします。

    または

    プロシージャとパラメーター リストが一致する新しいデリゲートを定義するか、デリゲートとパラメーター リストが一致する新しいプロシージャを定義します。

  2. プロシージャまたはデリゲートがジェネリックの場合は、シグネチャが他のシグネチャと一致する型引数を渡します。

関連項目