Leer en inglés

Compartir a través de


El método '<methodname> no tiene una firma compatible con el delegado <'delegatename'>

Este error se produce cuando se requiere una conversión entre un método y un delegado que no es posible. La causa del error puede ser una conversión entre parámetros o, cuando el método y el delegado son funciones, la conversión de los valores devueltos.

El código siguiente muestra el error en conversiones. El delegado es FunDel.

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

Las funciones siguientes difieren de FunDel de manera que se producirá este error.

VB
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  

Cada una de las siguientes instrucciones de asignación produce el error.

VB
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  

Identificador de error: BC31143

Para corregir este error

  • Examine los parámetros correspondientes y, si están presentes, los tipos de valor devueltos para determinar qué par no es compatible.

Consulte también