Navigate | Go to Implementation
This navigation feature 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 doesn't show abstract classes and interfaces.
- Place the caret at the declaration or usage of a type or type member.
- On the main menu, choose Navigate | Go to Implementation, or press Ctrl+Shift+Alt+BCtrl+Shift+Alt+B.
- If the symbol has only one implementation, dotPeek will navigate to it directly.
If the symbol several implementations, they will be listed in the drop-down list.
Do one of the following:
- To view the list of found items in the Find Results window, click Show in Find Results or press + on the numeric keypad.
- To navigate directly to a specific item, click on it in the lookup list or select it and press Enter.
If there are several implementations in an inheritance chain,
Go to Implementation bypasses intermediate steps. Suppose that interface
IDocument has the following inheritors:
However, when you invoke Go to Implementation upon the declaration or a usage of the IDocument interface, dotPeek shows only four inheritors:
That's because DocumentBase, being an abstract class, doesn't contain implementation of the IDocument interface, as well as ManagedDocumentBase and VsDocumentCommon.
The drop-down list that shows implementations may contain items in both bold and regular font. Bold indicates that an item represents a direct inheritor containing the implementation, while regular is used for indirect inheritors.
This feature is inspired by and borrowed from JetBrains ReSharper, a developer productivity tool for Microsoft Visual Studio.