I just wrote an article for msdn magazine, "Managed Spy: Deliver The Power Of Spy++ To Windows Forms With Our New Tool"

This tool is a combination of an application (exe) and library (dll).  The application gives you a spy++ view of all managed processes and thier child windows.  Unlike spy++, managed spy allows you to set and get all managed properties such as "BackColor" or "BorderStyle".  You can also view managed events such as "MouseMove" or "ItemSelected".

The library portion allows programmatic access to controls in another process.  This means you can sync on events and set properties all in your own code.  You could use this to create test harnesses, create a diagnostic tool for your application after its deployed or any number of things.

Take a look at the article and let me know what you think!