When working on a program that has a GUI, it’s very important to make sure that the UI is fast and responsive. If your program is performing a lot of long-running actions (writing to a database, making network calls etc.) you should always make sure that the code that is performing those actions is not being executed by the same thread that the GUI is on.
I’ve used the TreeView control in .NET extensively, but one thing I always wanted to be able to do is have “sub titles” on the tree nodes. Eclipse uses them extensively on their Package Explorer: