Microsoft's live service has an amazing contact details form in their "Account" > "Registered information" page. You are first asked for your country and the rest of the contact form changes accordingly. For example, if you select "United States", the form fields will change to: Address 1, Address 2, City, State (drop down of US states), ZIP code, Time zone (drop down of US time zones in a user-friendly form, e.g., "Eastern Time (EST)").
If you select "United Kingdom", the form fields will change to: Address 1, Address 2, Address 3, Second City, City, Country, Postal Code, Constituent Country (drop down) and Time zone (drop down).
This contact form provides the best user experience I have ever encountered in a contact form (I may be over sensitive here but enhanced user experiences excites me and I want to provide the same experience to my users).
Is there a way of creating such a form using VS 2008/.NET 3.5? Is there a legal way of getting hold of their information database?