<Metoda methodname> nemá podpis kompatibilní s delegátem <delegatename>

K této chybě dochází v případě, že je mezi metodou a delegátem vyžadován převod, který není možný. Příčinou chyby může být převod mezi parametry nebo, když metoda a delegát jsou funkcemi, převod ve vrácených hodnotách.

Následující kód znázorňuje neúspěšné převody. Delegát je FunDel.

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

Následující funkce se liší od FunDel způsobu, který způsobí tuto chybu.

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  

Každá z následujících příkazů přiřazení způsobí chybu.

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  

ID chyby: BC31143

Oprava této chyby

  • Zkontrolujte odpovídající parametry a pokud jsou k dispozici, vraťte typy, abyste zjistili, který pár není kompatibilní.

Viz také