I have a VB.Net sample that you could either convert to C# or use directly in a VB.NET 'project that documents your C# assembly.The approach uses reflection to examine the classes.
Include these routines in a project that references the assemblies that contain your parent and child classes.
Replace <Your Parent Class Name> with the appropriate type name.
Execute ListClassesInLoadedAssemblies to list the sub classes
You will need to Import System.Reflection
Public Sub ListClassesInLoadedAssemblies
For Each ass As Assembly In My.Application.Info.LoadedAssemblies
ListClassesInAssembly
Next
End Sub
Protected Sub AddProcessesFromAssembly(ByVal ass As Assembly)
Try
For Each t As System.Type In ass.GetTypes
if t.IsSubClassOf (GetType (<your parent class name> ) Then
Debug.print t.FullName
End if
Next
End Sub