Die Methode '<methodname>' verfügt nicht über eine Signatur, die mit Stellvertretung 'Delegatename <' kompatibel ist.>

Dieser Fehler tritt auf, wenn eine Konvertierung zwischen einer Methode und einem Delegaten erforderlich ist, die nicht möglich ist. Die Ursache des Fehlers kann eine Konvertierung zwischen Parametern oder, wenn die Methode und der Delegat Funktionen sind, eine Konvertierung in den Rückgabewerten sein.

Das folgende Codebeispiel veranschaulicht fehlgeschlagene Konvertierungen. FunDelist der Delegat.

Delegate Function FunDel(ByVal i As Integer, ByVal d As Double) As Integer  

Jede der folgenden Funktionen unterscheidet sich von FunDel in einer Weise, die diesen Fehler verursacht.

Function ExampleMethod1(ByVal m As Integer, ByVal aDate As Date) As Integer  
End Function  
  
Function ExampleMethod2(ByVal m As Integer, ByVal aDouble As Double) As Date  
End Function  

Jede der folgenden Zuweisungsanweisungen verursacht den Fehler.

Sub Main()  
    ' The second parameters of FunDel and ExampleMethod1, Double and Date,  
    ' are not compatible.  
    'Dim d1 As FunDel = AddressOf ExampleMethod1  
  
    ' The return types of FunDel and ExampleMethod2, Integer and Date,  
    ' are not compatible.  
    'Dim d2 As FunDel = AddressOf ExampleMethod2  
  
End Sub  

Fehler-ID: BC31143

So beheben Sie diesen Fehler

  • Untersuchen Sie die entsprechenden Parameter und, sofern vorhanden, Rückgabetypen, um zu ermitteln, welches Paar nicht kompatibel ist.

Weitere Informationen