The Move to Another Type refactoring allows users to move inner classes, static fields and methods to another type. All corresponding references and usages are automatically updated, including scenarios where a member uses other members of its original type.
TipTo move a non-static method, perform the following sequence of refactorings: Make method static, then Move a type to another type, then Make method non-static.
- Place the caret at the name of a static member or an inner type in the editor or select it in the Class View window or in the Object Browser window.
- On the ReSharper menu or context menu, choose Refactor | Move, or press F6.
If an inner type is selected, the Move drop-down list appears,
click Move to Another Type and the Move to Another Type dialog box opens.
Otherwise, this dialog box opens immediately.
- Type or browse to the name of the target class using the drop-down list.
All static members of the containing class and its inner types are displayed in the text area.
Select check boxes next to members or inner types to move them.
NoteIf the refactored static member uses another static member of the same class, ReSharper highlights the used member in blue and shows a corresponding tooltip.
- Specify the appropriate access rights.
- Click Next. If no conflicts are found, ReSharper performs the refactoring immediately. Otherwise, resolve conflicts.