The official release date for Windows Phone 7 is October 11th (in the US). Word around the internet is that it will be released in Canada around the end of October / beginning of November. LG, Samsung, HTC, and Dell have all developed handsets that will be available in Canada. One of the services we offer at imason is mobile development and since we are a Microsoft Gold Partner, developing on Windows Phone 7 is our forte (actually it’s the only mobile development we do). I assume as this platform gets bigger more people will jump to learn how to program on it, so this is a quick-and-dirty list of resources that will help you to learn about programming on Windows Phone 7.

  1. http://developer.windowsphone.com/
    • If you are a developer, the first thing you need to do is visit the developer’s home page. You can download tools from here, read about the SDK, look at sample code, and get questions answered in the forums.
  2. http://silverlight.codeplex.com/releases
    • You must download the Silverlight Toolkit for Windows Phone 7. It has a lot of great Silverlight controls that will make your app much cooler. For example, the version of the SDK and Silverlight that you get from the first link does not have a calendar control. The Toolkit from this link has a DatePicker and a TimePicker control that you can just plop on your page and use.
  3. http://channel9.msdn.com/Learn/Courses/WP7TrainingKit
    • The best place I have found for guides, best practices, code samples, etc was Channel9. This is the home page.
  4. http://channel9.msdn.com/Learn/Courses/WP7TrainingKit/WP7Silverlight
    • I particularly like the home page for Silverlight on WP7. There are a ton of tutorials here, the ones I found most useful are listed below.
  5. http://channel9.msdn.com/Learn/Courses/WP7TrainingKit/WP7Silverlight/WindowsPhoneNavigationAndControlsLab
    • How to handle navigation, going back and forth between pages, the best practices for setting up your pages.
  6. http://channel9.msdn.com/Learn/Courses/WP7TrainingKit/WP7Silverlight/ApplicationLifetimeWP7Lab
    • Very important read on the application life cycle of a WP7 app.
  7. http://channel9.msdn.com/Learn/Courses/WP7TrainingKit/WP7Silverlight/LaunchersAndChoosersWP7Lab
    • Working with launchers and choosers. Launchers and choosers are parts of the API that allow you interact with the Windows Phone 7 first-party apps, such as the email client, calendar/agenda, contact list, messaging app, etc.
  8. http://channel9.msdn.com/Learn/Courses/WP7TrainingKit/WP7Silverlight/UsingPivotAndPanoramaControls
    • This tutorial shows you how to make your apps have the cool Windows Phone 7 feel with the sliding between screens (called pivot and panorama controls).
  9. http://www.silverlight.net/learn/videos/all/windows-phone-application-bar/
    • Great tutorial video on how to set up the application bar at the bottom of your app. The video also shows the different customizations that you can do to the application bar.
  10. http://channel9.msdn.com/Blogs/SlickThought/Simplify-Page-Transitions-in-Windows-Phone-7-Silverlight-Applications
    • Getting the cool fade-in, fade-out page transitions to work. This effect is done by using the TransitioningContentControl that comes with the Silverlight toolkit (an extra install from link #2). Note: this tutorial was done on the April release of the Windows Phone 7 SDK, the latest SDK is slightly different.
  11. http://channel9.msdn.com/blogs/slickthought/custom-per-page-transitions-for-windows-phone-7
    • Similar to the previous link, this shows a little bit more about fancy, animated page transitions.
  12. http://blogs.msdn.com/b/avip/archive/2010/04/03/windows-phone-frame-page-navigation-and-transitions-using-the-transitioningcontentcontrol.aspx
    • This is another link on page transitions by using the TransitioningContentControl. However, it also uses the April release.
  13. http://www.viddler.com/explore/pagebrooks/videos/10/
    • This video tutorial describes how to create a splash screen for you Windows Phone 7 application. It’s quite simple actually.
  14. http://mobileworld.appamundi.com/blogs/andywigley/archive/2010/07/12/migrating-wp7-april-ctp-projects-to-wp7-beta.aspx
    • There are differences between the April CTP release and the July release of the Windows Phone 7 SDK. This blog post describes a couple of steps to convert older projects to the new version. Obviously if you are just starting out you do not need this, but if you find sample code on the internet, you might need these steps to get the code working on your machine.

If you are just starting out, then these links (and probably a couple of days of your time) will be sufficient to introduce you into the structure, framework, best practices, and common utilities for Windows Phone 7. And now I’m off to try and get my own TransitioningContentControl to work.