Go to Implementation

Last modified: 08 March 2021

ReSharper | Navigate | Go to Implementation
Control+Shift+Alt+B
ReSharper_GotoImplementations

This command lets you jump from a base type or member to any of its end implementations, bypassing intermediate steps in the inheritance chain. In other words, it works similar to Go to Derived Symbols but it does not show abstract classes and interfaces.

You can invoke this command from the Solution Explorer, from the File Structure window and other tool windows. If necessary, you can navigate in the opposite direction with the Go to Base Symbols command.

If the item you navigate to belongs to the current solution, ReSharper opens the corresponding file in the editor and places the caret at the symbol declaration. If it is in referenced libraries, ReSharper navigates according to the settings defined on the Tools | External Sources page of ReSharper options(Alt+R, O).

Here is an example of how Go to Implementation bypasses intermediate steps. Suppose that the IDocument interface has the following inheritors:

ReSharper: Go to implementation. Hierarchy
When you invoke the Go to Implementation upon the declaration or a usage of the IDocument, ReSharper shows only two inheritors:
ReSharper: Go to implementation. Drop-down list
That is because other classes are abstract and do not contain implementation of the IDocument.

This feature is supported in the following languages and technologies:

The instructions and examples given here address the use of the feature in C#. For details specific to other languages, see corresponding topics in the ReSharper by Language section.