There is no way the compiler can give you such a warning in C#. It would somehow need to have knowledge of past versions of the interface to know what method/property was removed and therefore identify possible candidates for removal.
And answering your commentary, you can not make the compiler / refactoring tool decide if any given method is a candidate simply based on the #region
its defined in. There is absolutetly nothing that enforces any given method to be defined in any given region
, its just visual sugar so refactoring based on regions would be completely unsafe.
Sometimes verbose languages do have advantages, and in this case VB with the implements
keyword would make this a compile time error. In C#, you have to use explicitly implemented interfaces which is not a bad option at all. Read here for more details.