Learn your way! Get started

Windows Phone 7 Development Using VS 2010

with expert David Kelley


Course at a glance

Included in these subscriptions:

  • Dev & IT Pro Video
  • Dev & IT Pro Power Pack

Release date 12/15/2011
Level Intermediate
Runtime 9h 11m
Closed captioning N/A
Transcript N/A
eBooks / courseware N/A
Hands-on labs N/A
Sample code Included
Exams Included


Enterprise Solutions

Need reporting, custom learning tracks, or SCORM? Learn More



Course description

Windows Phone 7 is a new step for Microsoft for the mobile platform. This course will introduce the mobile OS and how easy it is to use the.NET knowledge to create applications. The course will cover many introductory aspects of developing applications for the Windows Phone 7. For instance how XAML is used for applications and GUI designs. Also the course will cover many other aspects including controls, user input and forms, working with data, layout and Metro Controls. The course will also cover phone resources such as the Camera, GPS and many other items. To wrap up the course, the publishing the application to the marketplace and hosting of advertisements are covered.

Meet the expert

David Kelley is a Silverlight MVP with over 10 years of experience building Targeted Customer eXperiences. He is currently the Principal User eXperience Architect for [wire] stone specializing in touch experiences such as digital price tags and Silverlight-based kiosks for retail. David publishes a blog called Hacking Silverlight and helps to run the Seattle Silverlight User Group and Interact Seattle, Seattle's Designer Developer Interaction Group.

Course outline



Module 1

Intro to Windows Phone 7 (14:01)
  • Introduction (01:00)
  • Phone 7.5 the device (01:03)
  • Phone Metro Design Theory (00:58)
  • What is a Red Thread? (00:44)
  • Metro as a Platform (00:58)
  • Panorama (00:40)
  • Metro as a platform? (00:33)
  • Architectural Overview (01:25)
  • System Architecture (01:58)
  • Demo: Explore App Architecture (04:15)
  • Summary (00:22)
MVVM (18:27)
  • Introduction (00:44)
  • Model-View-ViewModel (MVVM) (02:25)
  • Why MVVM? (02:06)
  • Publishing Process (03:41)
  • Device Unlock for App. Dev. (01:45)
  • Getting the Tools (01:06)
  • Demo: Create a New Project (01:53)
  • Demo: Debug Your Project (01:48)
  • Demo: Mango Features (02:29)
  • Summary (00:25)
Hardware (06:03)
  • Introduction (00:37)
  • App Hub (01:20)
  • Register The Phone (00:51)
  • Deploy to the Phone (01:48)
  • Select Deploy Apps (01:08)
  • Summary (00:16)
Mango (03:09)
  • Introduction (00:44)
  • What"s New with Mango (01:15)
  • What We Covered (00:54)
  • Summary (00:15)
Anatomy of a Phone App (13:49)
  • Introduction (00:32)
  • Demo: Examine Constructor (01:50)
  • Demo: Add Controls (00:46)
  • Demo: Intellisense (01:51)
  • Demo: Add Events (00:54)
  • Demo: Add a Class for Events (01:41)
  • Demo: Add Custom Controls (00:53)
  • Demo: Set up a Namespace (02:59)
  • Demo: Test New App (02:05)
  • Summary (00:14)
My First MVVM (13:42)
  • Introduction (00:57)
  • Demo: Create an MVVM App (00:19)
  • Demo: Add Model (01:50)
  • Demo: Add ViewModel (06:27)
  • Demo: Add View (03:46)
  • Summary (00:20)

Module 2

Animations (16:30)
  • Introduction (00:50)
  • View Animation Demo (00:46)
  • Demo: Basic / Double Animation (07:58)
  • Demo: Color Animation (03:46)
  • Demo: Triggers (02:46)
  • Summary (00:21)
UXA / Building with Metro (03:53)
  • Introduction (00:41)
  • Demo: Metro Infrastructure (01:16)
  • Demo: Launch Emulator (01:36)
  • Summary (00:18)
ApplicationBar (08:42)
  • Introduction (00:39)
  • Demo: ApplicationBar (00:51)
  • Demo: Add Resources (04:11)
  • Demo: MenuItems (01:52)
  • Demo: Add Events (00:44)
  • Summary (00:23)
Panorama and Pivot (10:05)
  • Introduction (00:31)
  • Demo: Panorama Control (05:31)
  • Demo: Pivot Control (03:39)
  • Summary (00:23)
Expression Blend (11:23)
  • Introduction (00:38)
  • Expression Blend from VS (02:07)
  • Demo: Expression Blend Basics (08:16)
  • Summary (00:20)
Styles and Templates (07:47)
  • Introduction (00:45)
  • Demo: Work with a Style (01:11)
  • Demo: Edit a Template (02:07)
  • Demo:Explore a Style (01:18)
  • Demo: VisualStateManager (02:07)
  • Summary (00:17)
Layout (22:22)
  • Introduction (00:31)
  • Demo: Display in a Grid (05:26)
  • Demo: Display in a Canvas (04:20)
  • Demo: Display using Margins (03:40)
  • Demo: Display w/StackPanel (04:56)
  • Demo: Display w/Listbox (03:09)
  • Summary (00:17)

Module 3

Navigation / Global Resources. (19:58)
  • Introduction (01:04)
  • Demo: Add Navigation (04:24)
  • Demo: Add Navigation Code (03:03)
  • Demo: Pass Data (07:04)
  • Demo: Global Resources (04:10)
  • Summary (00:12)
Form Controls (12:12)
  • Introduction (00:35)
  • Demo: TextBlock (02:35)
  • Demo: TextBox (02:10)
  • Demo: PasswordBox/Button (02:47)
  • Demo: RadioButton (02:13)
  • Demo: CheckBox (01:31)
  • Summary (00:18)
Input Scopes (06:24)
  • Introduction (00:31)
  • Overview: InputScopes (00:42)
  • Demo: Text / Number (01:18)
  • Demo: Default / URL / Telephone (03:35)
  • Summary (00:15)
Other Controls (19:00)
  • Introduction (00:32)
  • Demo: ProgressBar (05:28)
  • Demo: WebBrowser (08:41)
  • Demo: UserControl (04:06)
  • Summary (00:12)
Map Control (09:27)
  • Introduction (00:51)
  • Demo: Add Map Service Ref (01:31)
  • Demo: Add MapControl (01:08)
  • Demo: CredentialProvider (05:35)
  • Summary (00:19)

Module 4

Touch Controls (20:27)
  • Introduction (01:07)
  • Overview: Touch Controls (06:25)
  • Demo: MultiTouch (01:18)
  • Demo: Gesture Support (07:39)
  • Demo: Test on a Device (03:37)
  • Summary (00:18)
Async Model (21:11)
  • Introduction (01:21)
  • Async Model (00:53)
  • OneResult Model Code (02:07)
  • SearchResultsModel Code (02:36)
  • ObservableCollection Code (07:57)
  • Parse Results (05:45)
  • Summary (00:28)
LINQ (10:48)
  • Introduction (00:36)
  • Demo: Add LINQ Support (01:47)
  • Demo: Build List (08:03)
  • Summary (00:21)
Consuming Async Model MVVM (22:34)
  • Introduction (00:40)
  • Create a ViewModel (04:19)
  • SearchResultsViewModel Code (04:09)
  • ObservableCollection Code (01:22)
  • Create a View (02:21)
  • Add User Control Code (06:14)
  • Test the App (03:05)
  • Summary (00:22)

Module 5

Isolated Storage (13:08)
  • Introduction (00:27)
  • Demo: Put Data in Storage (04:50)
  • Demo: Get Data from Storage (06:34)
  • Demo: Test the App (01:01)
  • Summary (00:15)
Database (21:34)
  • Introduction (00:40)
  • Demo: Database Definitions (09:37)
  • Demo: Explore ToDo App (03:53)
  • Demo: How to Add Data (05:12)
  • Demo: How to Delete Data (01:53)
  • Summary (00:16)
Application Life Cycle (18:53)
  • Introduction (00:40)
  • Lifecycle Terms (03:06)
  • Application Lifecycle Events (05:09)
  • Demo: Persist App State (08:48)
  • Summary (00:12)
Settings (13:56)
  • Introduction (00:28)
  • Demo: Save / Get Settings (04:48)
  • Demo: Test with Settings (01:42)
  • Demo: Save / Get Objects (05:32)
  • Demo: Test with Objects (01:12)
  • Summary (00:12)

Module 6

Launchers (31:13)
  • Introduction (00:55)
  • Explore Launcher Project (00:50)
  • Demo: Email Task (03:08)
  • Demo: Marketplace Review Task (03:16)
  • Demo: Market Detail Task (04:10)
  • Demo: WebBrowser Task (03:24)
  • Demo: Bing Maps Task (05:56)
  • Demo: Media Player Task (03:54)
  • Demo: Phone Call task (02:04)
  • Demo: Save Phone Number Task (00:48)
  • Demo: View All Available Tasks (02:29)
  • Summary (00:14)
Choosers (18:33)
  • Introduction (00:37)
  • Explore Choosers Project (00:28)
  • Demo: Camera Capture Task (06:28)
  • Demo: Phone Number Task (03:49)
  • Demo: Photo Chooser Task (03:20)
  • Demo: Email Chooser Task (03:37)
  • Summary (00:12)
Sound and Media (12:16)
  • Introduction (00:37)
  • Explore Sound Demo (01:49)
  • Demo: Play Sound (06:10)
  • Demo: Play Video (03:20)
  • Summary (00:18)

Module 7

GPS Demo (43:26)
  • Introduction (00:36)
  • Overview: Assisted GPS (01:15)
  • Demo: Add Resources (06:23)
  • Demo: Add Map Control (00:58)
  • Demo: Add Tactile Feedback (01:43)
  • Demo: Add GeoCoordinateWatcher (01:16)
  • Demo: Add Other Variables (03:01)
  • Demo: Add Events (20:08)
  • Demo: Test GPS App (00:54)
  • Demo: Stop GPS (01:35)
  • Demo: Add Zoom and Reset (01:24)
  • Demo: Save State (03:46)
  • Summary (00:21)
Accelerometer (17:43)
  • Introduction (00:34)
  • Overview: Accelerometer (02:56)
  • Demo: Add Variables (05:03)
  • Demo: Constructor (06:57)
  • Demo: Test the App (01:54)
  • Summary (00:18)

Module 8

Compass and Gyro (14:59)
  • Introduction (00:15)
  • Overview: Compass / Gyro (00:31)
  • Demo: Add Resources (01:26)
  • Demo: Add Compass Code (07:45)
  • Demo: Add Gyro Code (04:54)
  • Summary (00:06)
User Data (20:42)
  • Introduction (00:35)
  • Overview: User Data (00:43)
  • Demo: DataTemplate/Converter (01:22)
  • Demo: View the UI (00:19)
  • Demo: Contacts Code (06:43)
  • Demo: ContactDetails Code (03:48)
  • Demo: Accounts Code (01:32)
  • Demo: Appointments Code (05:19)
  • Summary (00:17)
Revenue Models (21:30)
  • Introduction (00:39)
  • Revenue Models (04:36)
  • Downloads - Free vs Trial (01:08)
  • Impressions - Paid vs Trial (01:12)
  • AdCenter (00:41)
  • Demo: AdCenter (02:34)
  • Demo: Add AdControl (04:01)
  • Demo: View AdCenter Ads (01:55)
  • Demo: Create an New AdUnit (04:26)
  • Summary (00:13)
App Hub (11:32)
  • Introduction (00:34)
  • Explore App Hub Process (02:37)
  • Upload App to Marketplace (08:01)
  • Summary (00:19)