Go to Type of Symbol
Ctrl+Shift+T
ReSharper_GotoTypeDeclaration
While the
Go to Declaration
command navigates you to the place where a symbol is declared, the
Type of Symbol
command navigates to the declaration of the type of the currently selected symbol.
For example, if you have a variable
Foo myVar = new Foo();
and invoke this command on a usage of
myVar
, it will bring you to the declaration of the class
Foo
.
If you invoke this command on a function, it navigates to the function's return type.
For variables of generic types, this command allows you to navigate to the generic type declaration as well as
to declarations of all generic parameters.
For example, suppose you have a type
class MyGeneric<X, Y>
and a variable of this type
var myGeneric = new MyGeneric<Author, Book>
.
Invoking this command on any usage of
myGeneric
,
you will be able to choose the navigation destination between
MyGeneric
,
Author
, and
Book
classes.
You can invoke this command from the editor, from the File Structure Window and other tool windows.
To navigate to the type of a symbol
- Place the caret on a symbol in the editor or select the symbol in a tool window.
- Press Ctrl+Shift+T or choose in the main menu .
- If the type of the symbol has only one declaration, ReSharper will navigate to it directly.
-
If there are several declarations (e.g. in case of a partial lass), they will be listed in the drop-down list.
Do one of the following:
- Click on the desired item to open it in the editor.
- Select the desired item by pressing UpArrow and DownArrow and the press Enter to open it in the editor.
- To view and analyze the list of matched items in the Find Results Window, click Show in Find Results or press + on the numeric keypad.
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 found in referenced libraries, ReSharper navigates according to the settings defined on the Tools | External Sources options page.
This feature is supported in the following languages/technologies:
C# | VB.NET | C++ | HTML | ASPX | Razor | JavaScript | TypeScript | CSS | XML | XAML | RESX | Build Scripts | Protobuf | JSON |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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.
See Also
Procedures:
- Go to Everything/Type
- Go to File
- Go to File Member
- Go to Symbol
- Go to Base Symbols
- Go to Derived Symbols
- Go to Declaration
- Go to Implementation
- Go to Usages of Symbol
- Navigate to
- Go to Containing Declaration
- Navigation by Name
- Navigation from Symbols
- Navigate To
- Context-Dependent Navigation
- Navigating to Recent Locations
- Structural Search and Replace