Ok, the first thing I tried to do was "Change signature", and it messed up. It swapped my variables, but for some reason it thought it was a good idea to swap all my assignments as well. Here is a simple example.
Sub New(ByVal reportName As String, ByVal isEmbedded As Boolean)
_reportName = reportName
_isEmbedded = isEmbedded
Sub New(ByVal isEmbedded As Boolean, ByVal reportName As String)
_reportName = isEmbedded
_isEmbedded = reportName
Then I tried to "Replace Constructor with Factory Method". I got through the dialog, then was faced with a "conflicts" screen saying:
1) Language VB.NET of target type declaration is not supported by the refactoring. This points to the class name, which inherits from System.Exception.
2) Language VB.Net of usage is not supported by the refactoring. There are two of these, both of which point at where the New would be replaced with the factory call.
I can not seem to get "extract to interface/superclass" to enable. I also can not get the "push member up/down" to enable. I can not get any of the "Convert..." refactorings to work. Extract to method seems to work, but I'm running into the same problems as last time otherwise. Is VB not supported in some of these refactorings?