I want to create my own Forms (or chart object) by using VB code. A simple example, how can we create a Listbox (Forms, not ActiveX control)?

In other word, how Microsoft develop Forms and Chart objects?
There are should be in a .dll file. But, can it be developed by VB language? How to make a very simple one?