Microsoft Virtual Academy
Get 50% off eBooks plus
40% off print books at
The Microsoft Press Store
Check out our free online Windows Phone 8.1 development course. Join Bob Tabor (LearnVisualStudio.NET) for this 9+ hour series as he covers Windows Phone UI with XAML layout and events, navigation model, application lifecycle, and working with the Windows Phone Emulator. This course focuses on Windows Phone development for beginners as Tabor explores understanding MVVM (Model-View-ViewModel) and HTML apps in the WebView. Get details about storage, maps, animations, and media (video/audio with the MediaElement control). Build five apps, covering a range of scenarios, from media playback to hosted HTML, from accessing geolocation data and mapping to extending your Windows Phone app to become a universal Windows/Windows Phone app. These Windows Phone development tutorials will build a firm foundation for your future in mobile app development.
Instructor | Bob Tabor – Microsoft MVP
Start by learning about XAML, the declarative language used for laying out the user interface of phone apps, along with phone's API, the specific classes and methods you can call to interact with the phone's hardware capabilities, and the tools in Visual Studio that make your job easier.
Create a simple Windows Phone app.
Before you start, make sure that you already have Visual Studio 2013 Update 2 installed. It includes the Windows Phone 8.1 Tooling discussed in Module 1.
Explore the XAML syntax written in the first pass at the HelloWorld app. Get the knowledge you need to look at the XAML you write in the remainder of this series and to take a pretty good guess at what it's doing (before Bob even explains it)!
Discover two primary elements used in layout and positioning: the Grid element (defining rows and columns) and the StackPanel element (orientation and alignment). Learn how event handers are "wired up" from both XAML and in C#.
Examine common XAML controls used for basic input and interaction in phone apps.
Explore technical aspects of working with XAML to style your app. Find out about reusable resources and styles that can be shared between many elements, whether on the same page or the same application. With available pre-built themes, force consistency across all apps on a given user's phone.
Navigate from one page to another, and learn how to pass important data between pages. Manipulate the navigation history so that you can control what happens with the phone’s physical back button.
Learn about the Package.appxmanifest, which contains metadata about your application. It describes your app to the operating system, including the friendly name of the app, icons, and images used on the Start page, what the phone’s hardware must support in order for your app to work properly, and much more.
Build your first complete app: a Tip Calculator. It helps to solve one of the fundamental problems that Bob has whenever he's in a restaurant and trying to figure out how much to tip the server, based on the service.
Take the work from the previous module and translate it into a Universal App, which allows you to distribute the Tip Calculator to both the phone and to the Windows 8.1 App Store for inclusion there.
Learn about what the Windows Phone Emulator really is and how it supplies versions for different deployment scenarios. Explore the function of the Emulator, including keyboard shortcuts that emulate device buttons. And learn about the controls to resize, rotate, and simulate the act of handling the virtual device.
Discover the important moments in the life cycle of your app, and gain insight into what is going on in your app, even when it is no longer running.
Take what you've learned, and create an entire app, a very silly little game using the WebView App project template featuring the WebView control.
Learn about the Hub App template. (If you’re familiar with the Windows Phone, you have seen instances of the Hub in use.) Spend the rest of the series exploring this template and the technologies it uses, plus how to modify it and extend it to get the desired results.
Pick back up with the default Hub App Template prior to making any changes to it. Find out where the actual data is coming from.
Learn how the HubPage.xaml page and the ItemPage.xaml bind to the data model discussed in Module 16.
Learn the basics of MVVM and how and why they are employed in the Hub App Template, so that you can gain insight into the thought process that influenced the organization and the design of the code in the template.
Find out more about the async feature, which is a simplified way of improving the performance of the app and making it more responsive to the user without the complexity of writing code to use multiple threads.
Create an app that involves playing video and the Hub App Template, and see how flexible the Hub App Template is with a little imagination.
Build an entire app based on the lessons learned about the Hub App project template. In this case, create a media application that displays images and recipes of cupcakes, along with instructional videos on how to make cupcakes.
Discuss the technique required to save a text file to the phone’s storage, and then open and read that file from the phone’s storage.
Learn about the Command Bar, another user interface element used on the phone to provide more options (in the form of icons and menus) to the user than those displayed by default.
Create an app that could be used to check in cars at a car rental company. This allows you to see a simple example of commands in action.
A Value Converter allows you to perform a conversion on the data to format the data, change the value of the data, perform calculations on the data, and more. See how diverse the value converters can be.
Build a project that combines concepts covered into a single example. The Daily Rituals project is essentially a goal-tracking app. The idea is, for 30 days, to track your progress against all the goals you've created.
Talk about the map control and about the GPS sensor inside of the device. The more general principles of working with the phone's sensors apply here, as well.
Explore animation. Change properties of the controls on these pages over time. Move an element from one place to another, change its size from small to large, change the opacity of a control, and more. Combine many different effects together to create a simple or complex sequence.
Build the MapNotes app, a GPS-aware note app that records not just the note you take but also where you took that note, and then it displays it on a map. You are able to read that note and to see a map of where you took it. And you can then delete the note or continue on from there.
Congratulations on making it all the way through this series! It takes a high degree of commitment to work your way through 10 hours of content, but you did it, and you definitely have what it takes to see a project through to the end. As you build the next great app, Bob encourages you to take your time, aim high, and test, test, test your app to make sure it is polished and ready for others to use.