Over a million developers have joined DZone.

How to Build the Perfect Windows Phone App...(sort of)

· Mobile Zone

Visually compose APIs with easy-to-use tooling. Learn how IBM API Connect provides near-universal access to data and services both on-premises and in the cloud, brought to you in partnership with IBM.

Today I have some tips on how to improve the  process of your Windows Phone application development from design to market.  From integrating the Metro Squares into your Visual Studio editor, to simple "dos and don'ts" for apps, and even how to make sure your app gets approved on the first submission, these experts' advice can help make your app better and faster.

Metro Squares in Visual Studio Editor

Rudi Ferrarin has come up with a modification of the base Grid control class that actually displays the metro squares in the Visual Studio editor during the design process.  In just 9 steps, he shows how you can create the grid pattern and use it in place of the default and you end up with something like this:

Also, be sure to check out the Windows Phone Developer Kit, which includes an app profiler and improved emulator.

Dos and Don'ts for Windows Phone Apps

The Windows Phone UK Centre of Excellence receives hundreds of app designs for review every year, and Dave Crawford was kind enough to provide a short list of common problems with some easy solutions.

Alignment and Spacing

As a general rule, everything in Windows Phone should be left aligned.  For those of you who prefer some more concrete guidance, the default page margins we suggest are 24 pixels from the left and right of the page.

-- Dave Crawford

Crawford also recommends using the Photoshop templates available from Microsoft: http://go.microsoft.com/fwlink/?LinkId=196225

Back, Close, Cancel Buttons

Since every Windows Phone has a hardware back button, Crawford recommends leaving one out of your application entirely.  There are some exceptions to this rule:

...such as the checkout process of a shopping experience.  Normally you'd use the back button to navigate within this process.  But say you were at the payment details screen and wanted to cancel the process to go back and add another product to your basket.  Rather than making the user press back a bunch of times, we would recommend they use a cancel button which cancels the checkout process and drops them back at the basket.

-- Dave Crawford

Mixing Metaphors

In other words, make sure the icons you use are performing the expected action.  Crawford explains that some developers use the same icon to perform multiple actions because it's easier than creating a new icon, but…

...there are plenty of resources online, and using amore accurate icon will make for a much nicer experience, and your users will thank you for that.

-- Dave Crawford

Get Your App Out There

Over at MSDN Magazine, Cheryl Simmons has a great breakdown of how to use the Marketplace Test Kit and Performance Analysis tool to identify and fix bugs in your Windows Phone app.  While there is a great deal of detailed information in Simmons' article, she sums it up nicely in this three step pattern:

  1. Use the tools I've shown, including all the test suites in the Marketplace Test Kit.
  2. Identify and fix any issues.
  3. Retest to verify fixes.

If you follow this pattern, you'll find problems earlier and create better applications faster.  Also, this will help ensure your applications are accepted into the marketplace on the first attempt.

-- Cheryl Simmons

Another great resource for developers is App Hub, where they provide tools and information, along with the support of the Windows Phone developer community.

The Mobile Zone is brought to you in partnership with Strongloop and IBM.  Visually compose APIs with easy-to-use tooling. Learn how IBM API Connect provides near-universal access to data and services both on-premises and in the cloud.


The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}