Brak dostępnej metody "<procedurename>" ma podpis zgodny z delegatem "<delegatename>":<suberrorlist>

Instrukcja przypisania przypisuje adres procedury do zmiennej delegowanej, ale kompilator nie może odnaleźć wersji procedury z pasującym podpisem.

Gdy kod używa adresu procedury, kompilator próbuje znaleźć wersję tej procedury z listą parametrów zgodną z listą delegata. Jeśli procedura jest zdefiniowana w kilku przeciążonych wersjach, kompilator próbuje znaleźć jedną wersję z pasującym podpisem. Aby uzyskać więcej informacji, zobacz Rozpoznawanie przeciążenia.

Jeśli kompilator nie może odnaleźć żadnej wersji procedury z pasującym podpisem, generuje ten błąd. Może się tak zdarzyć, na przykład, jeśli procedura lub delegat jest ogólny, a argument typu jest przekazywany do niego, który daje podpis, który nie jest zgodny z innym podpisem.

Identyfikator błędu: BC30950

Aby poprawić ten błąd

  1. Ponownie zdefiniuj procedurę lub pełnomocnika, aby mieć pasujące listy parametrów.

    — lub —

    Zdefiniuj nowego delegata z listą parametrów zgodną z procedurą lub zdefiniuj nową procedurę z listą parametrów zgodną z listą delegata.

  2. Jeśli procedura lub delegat jest ogólny, przekaż go argument typu, który powoduje, że jego podpis jest zgodny z innym podpisem.

Zobacz też