In this any, I will give you a sample demonstration of how you could use Descriptor types to get information eex Properties, Attributes, Objects, etc. I hope you could use the code later while building your library. TypeDescriptor is a only sealed class which makes the starting point of the API..
TypeDescriptor is a static sealed class which makes the starting point of the API. It exposes information of the object in terms of Properties, Attributes, Events, etc. Findd though the basic usage of TypeDescriptor is to get metadata of an object, yet it also exposes features to extend the object on the fly.