Stimmt, es ist eine Methode und kein Property.
Daher sollte der Cast auf TMethod funktionieren. Tut er aber nicht. Und das wundert mich, da ich auf diese Art öfter das Verhalten von Methoden ändere. Und dort geht das.
Das ist übrigens kein schmutziger Trick, sondern funktioniert mit den Bordmitteln ganz legal. Der Record TMethod ist für Zwecke wie diesen gemacht.
[virtual] käme dann zum Tragen, wenn ich [override] verwendete. Tu ich aber nicht, weil ich nicht kann, weil es nicht [virtual] ist
Sonst wäre das ganze Problem kein Problem.