Abelli Software
freeware
licence
useful links
donate
payware
 
topleft  
 

Download Class Hierarchy Viewer v1.0. for .NET v1.1 or

Download Class Hierarchy Viewer v2.0. for .NET v2.0

Pre-requisites: .NET Framework

A small utility to visualize inheritance in .NET library classes

Simply follow the instructions:

1. Type in the name of the .NET Type (class or interface) you're looking for

2a. If you click [Find], you'll get a list of all types where your criteria is part of the name (case insensitive), even if it's part of the namespace name.

2b.  If you click [Find Distinct], you'll get a list of all types where your criteria corresponds exactly with the short name (case sensitive), though in any namespace.

3. Select among the found types with the dropdownlist, and you'll see a kind of class hierarchy from the chosen type and up.

The leftmost column of boxes is the hierachy of types with the chosen type at the bottom, and then the direct supertype is the one above, etc. To the right of each such type are boxes with its implemented interfaces.

Legend

Yellow boxes are classes
Slightly lighter yellow boxes are value types (structs)
Blue boxes are interfaces
Green boxes are enums
When the name is in italics, the type is abstract

It's also possible to choose a type from the treeview, if you already know in which assembly it is. The dropdownlist will also be populated with all types with the same distinct name.

If you move the mouse over a box, the members of the type will show as a "Tooltip", with class name and which assembly it is from at the top.

You can synchronize the type you've selected in the diagram view with the treeview simply by clicking on [<sync].

As when selecting directly through the treeview, the droplist will be populated with all types with the same distinct name.

It is now also possible to load an arbitrary assembly through the "Tools" menu.

Version History

2006-05-10 2.0.2321.5247 Compiled for .NET 2.0
2006-05-03 1.0.2314.22823 Added possibility to load arbitrary assemblies
2006-04-16 1.0.2300.24268 First "published" version
2003-09-10 1.0 First runnable version

Work in progress and Known bugs

At the moment, it only searches for types in assemblies in

  • C:\Windows\Microsoft.NET\Framework\v1.1.4322\ when running version 1
  • C:\Windows\Microsoft.NET\Framework\v2.0.50727\ when running version 2

...i.e. the core libraries for .NET 1.1 or 2.0 respectively.

It seems like the 1.1 version doesn't recognize all 2.0 assemblies in respective Framework as valid assemblies and vice versa. Where the 2.0 version can load 1.1 assemblies, these will show in the treeview as while 2.0 assemblies are shown as .

  • The class- and namespace names should wrap neater in the boxes...
  • I'll probably also will make the appearance more "UML"-ish...
  • I will change the "Tooltip" to something else, as types with a lot of members don't fit into the screen...
  • It would be nice to connect the types to the MSDN documentation...

Note that I don't consider it as a bug, but there are many types you'll see that's not mentioned in the MSDN documentation, especially inner classes...


Copyright © Björn Abelli, abelli software, 2006

For donations with Payson
www.abelli.se
 
bottomleft