Explore Type Hierarchy
With dotPeek, you can investigate the inheritance hierarchy of types. You can see both base types and inheritors of the selected type and navigate to any of them with a mouse click. For any node in the hierarchy, you can view all or only polymorphic members in the preview pane.
Locate the desired type in the code viewer or expand it in the Assembly Explorer.
Examine type hierarchy in the dedicated tab that adds to the Hierarchy window.
Some symbols in the tree are displayed in a bold font. It means that they inherit directly from the type being examined.
Hierarchies can be rather complicated, making it difficult to find one particular symbol, especially when you have doubts about its name and place in the hierarchy. In such case you can start typing a part of symbol's name or its CamelHumps abbreviation and dotPeek narrows down the set of elements in the window:
If you want to see what modules contain symbols in the hierarchy, select Containing Modules Hierarchy in the Group by list.
You can also visualize the current hierarchy on the type dependency diagram by clicking the Show on Diagram on the toolbar.
Rebuild a hierarchy for an intermediate node
In the hierarchy tree view, select the desired node.
Click Base on This on the toolbar or choose the corresponding command in the context menu of the selection.
Preview members of a type selected in the hierarchy
Select a type in the hierarchy.
Click Show Members on the toolbar. The members preview pane displays at the bottom of the window:
You can move the preview pane to the right of the window by clicking the down arrow next to Show Members on the toolbar and selecting Right.
You can also preview either all members of a type, or just those that are polymorphic. To switch between these two modes, use the All Instance Members and Only Polymorphic Members buttons at the top of the preview pane.
This feature is inspired by and borrowed from JetBrains ReSharper, a developer productivity tool for Microsoft Visual Studio.