Navigation and Search
Navigate from Here
This is a single shortcut for all your navigation needs. Navigate from Here lists all destinations available at the current caret position. Press Ctrl+Shift+G for quick navigation links to the declaration, type declaration, base class, inheritor(s), or usage of the symbol under the caret; interface implementation for an interface; function exits for a function, and more.
Go to Symbol
The Go to Symbol feature (Ctrl+Shift+Alt+N) is the most far-reaching of the "Go to"
family of search commands. This powerful feature searches by name, solution-wide, for any file member. All
ReSharper's 'Go to' commands, including Go to Symbol, support CamelHumps. That is, you can find a member quicker
by entering its initial character and subsequent upper case characters.
Go to Type
Press Ctrl+N to navigate to any type within your solution. Start typing in the input
box, and a lookup list will appear with type names matching the entered substring. This feature also supports
wildcards: '*' (asterisk) represents zero or more characters; '+' (plus) represents one or
more characters; '?' (question mark) represents one or zero characters. In addition, you can type just
capitalized symbols or use CamelHumps notation. For example, you can simply type ATB instead of AbstractTreeBuilder.
Go to File
Similar to Go to Type, Go to File (Ctrl+Shift+N) navigates you to any file within your
solution. All the same search techniques and wildcards are supported.
Go to File Member
To quickly navigate to a particular method or field in the current file, use the Go to File Member command (Ctrl+F12). Same as with Go to Type, start typing the symbol name and then select from the list of matching members. In XAML files, you can quickly navigate to any named entity.
Go to Base
You can navigate up the hierarchy to base type or method by positioning the caret on a usage or declaration of a
type or method in the editor and pressing Ctrl+U.
By the way, you can also see when a method overrides, implements, or hides another method by the presence of special icons that appear at the method declaration on the left gutter of the editor window. Click the icon to navigate up the methods hierarchy.
Go to Inheritor
Similarly to Go to Base, this command lets you navigate down to a derived type or method by pressing Ctrl+Alt+B.
Go to Declaration
To navigate to the declaration of a symbol, position the caret at any symbol usage and press Ctrl+B, or hold Ctrl and left-click the symbol. ReSharper will position the caret on the declaration of the corresponding type, method, field, or local variable in the relevant source file (which opens automatically if necessary). For library symbols, the corresponding entity will be displayed in Visual Studio's Object Browser.
Go to Type Declaration
Press Ctrl+Shift+T to navigate to the declaration of a type that a variable, field, or parameter belongs to. ReSharper will switch to the declaration in source code or, for built-in types, in the Object Browser.
Go to Last Edit Location
Press Ctrl+Shift+Backspace to quickly position the caret at the latest location where you changed your code. Subsequent use of this action leads you deeper into your editing history.
Go to Next Member/Tag
You can quickly go to next file member in C# or VB.NET code files, or to next tag in XML or XAML files, by pressing Alt+Up.
Go to Previous Member/Tag
Similar to Go to Next Member, this feature gets you to the previous member or tag — all you have to do is press Alt+Down.
CamelHumps is a feature that identifies parts of compound names composed according to CamelCase, where each such part starts with a capital letter.
By default, it works in all 'Go to' commands, namely Go To Type, Go To File, Go To File Member, and Go To Symbol, as well as in all Code Completion features. You can also apply CamelHumps to the Extend/Shrink Selection and Next/Previous Word commands.
Find Usages quickly locates usages of any symbol (type, method, field, etc.) in your code. Just position the caret on the symbol for which you want to find usages and press Alt+F7. If you have a mixed-language project, usages can be found across multiple languages with ReSharper 4.0 Full Edition.
Search results are displayed in the Find Results window, and organized in a hierarchy. From this window you can directly navigate to any usage with either keyboard or mouse. Additional functionality of Find Results provides several ways to work with search results, including:
- source code preview
- filtering by read or write usages, invocation usages, attribute usages, usages in documentation, or "other"
- grouping by categories
- tabs of recent usage searches, and more.
You can navigate between usages, when the Find Results window is open, by pressing Ctrl+Alt+Up/Down (even from the editor).
To specify the search scope and the type of usages to be found, use the Find Usages Advanced feature available by pressing Shift+Alt+F7.
Go to Usage
You can quickly navigate to symbols with few usages (e.g. with a private field) by pressing Ctrl+Alt+F7.
Instead of opening an entire tool window, it will open usages in a pop-up.
However, if it turns out that the pop-up with the list of symbol usages contains too many items, just click the magnifier icon in the top right corner of the pop-up to transfer the list of usages to the Find Results window.
Highlight all the usages of a symbol within the current file. Just position the caret on any symbol usage and
press Ctrl+Shift+F7. You can also highlight usages of namespace import directives and even
ReSharper quickly finds and highlights usages of symbols within XAML markup as well as across languages.
Find Referenced/Dependent Code
ReSharper enables you to find pieces of code that depend on a project and outgoing references, with results
displayed in the Find Results window. If a single usage is found, the caret moves to the corresponding location.
To find dependent or referenced code, you only have to select a node in the Solution Explorer or position the
caret at a container in the text editor, and choose choose Search | Find Dependent Code/Find Referenced
Code on the ReSharper menu.
With ReSharper, you can view the inheritance hierarchy of a certain type in a dedicated window. The window shows
both base types and inheritors of the selected type and allows you to navigate to any of them with a single
click. For any node in the hierarchy, you can view all or only polymorphic members in a separate preview
To open the Type Hierarchy window for a type, position the caret at the type name, and press Ctrl+Alt+H, or choose the View | Type Hierarchy on the ReSharper menu.
With the File Structure window, you can see what methods, fields, classes, and regions your current C# or
VB.NET code file contains, as well as navigate directly to their declarations — just press Ctrl+F11.
In ASP.NET, File Structure lets you examine controls, methods, and other structural elements of a currently opened file, as well as navigate directly to their declarations.
For build scripts, File Structure lets you see what properties and targets that the current script contains. Within the window, you can rearrange build script structural elements within the file with a simple drag-and-drop.
File Structure also displays regions defined in the current file and allows you to arrange declarations within
classes and regions according to your needs. Just drag the node to the new location.
The File Structure window is fully synchronized with the editor. All changes made to a file are immediately reflected in the File Structure and vice-versa.
View Recent Files
Pressing Ctrl+E opens a pop-up window with the list of recently opened files, where you
can select any item to navigate to.
View Recent Edits
This works a lot like Recent Files, but the pop-up window shows the list of files and symbols that you have recently modified.
Stack Trace Explorer
When you receive an external stack trace (for example, from a bug report), you can copy-paste it into the Stack
Trace Explorer to navigate to where an exception originated. The lines within the stack trace will be
represented as hyperlinks. To open the Stack Trace Explorer, press Ctrl+Shift+E.
The To-do Explorer helps you keep track of all your reminder items marked with todo, note
and/or bug tags, as well as positions where NotImplementedException are thrown. To-do Explorer
retrieves all such items from all files in your solution — even closed ones — and displays them in To-do
Explorer for your browsing pleasure