An Introduction to the Windows Phone 7 Development Platform

Need a brief introduction to the WP7 development platform?

Check out my article published today on DZone.

I like to call it a re-introduction because developers on .NET, Silverlight and Web services already have a significant leg up on this platform.

20100921 article

Enjoy Smile

Advertisement

Get extra WP7 controls with the Silverlight Toolkit for Windows Phone 7

Today saw the RTW/RTM of the Windows Phone 7 developer tools – you can check out the highlights.

In addition, Microsoft Silverlight toolkit team has also added a Silverlight Toolkit for Windows Phone 7 on codeplex.

Check out the details at Tim Heuer’s blog.

You’ll get these controls along with their code and samples on how to use them…

ToggleSwitch

image

 

Content Menu (which zooms the the rest of the screen back a little and support ICommand !!)

image

 

Date/Time Picker

image

image

Wrap Panel

image

 

Gesture Helper (that you simply embed inside other XAML elements and write event handlers for)

image

3 Windows Phone 7 Developer events in Ottawa this coming week with a Developer Device!

3 Important Windows Phone 7 Events in Ottawa featuring a real developer device…

1 Microsoft Canada Windows Phone 7 Ottawa Deployment Clinic – Sep 1st 2010

So you have a WP7 application in development, but you need to see how it works on a real device ahead of the marketplace opening in October?

The emulator currently available as part of the Windows Phone Developer Tools Beta, provides a great testing environment for many, but not all, of the platform’s features.  The capabilities of your application may necessitate testing on a real device.  Devices are available to purchase at retail in the November so you may need access to a real device for testing in the meantime.

Over the next few months Microsoft Canada will be holding a series events in Ottawa where you can try out your WP7 apps on a real device.

The first one will be held at the Microsoft Ottawa office (5th floor at the World Exchange Plaza) on Wed Sep 1 2010.  To request a testing slot, please contact Christian Beauclair, let him know about your application and why you’d like to test on a real device.  You should bring along a developer machine if you’d like to make revisions while testing.

Not ready to test on a device yet?  Future events will be held at the office and at coffee and code events around town.  Watch http://colinizer.com and http://blogs.msdn.com/b/cdndevs/ for details.

2 DevTeach Windows Phone 7 Boot Camp Sep 2nd/3rd 2010

clip_image001

The phone tools RTM on Sep 16th, the marketplace opens in October and devices expected in November.

Do you have?

· The developer knowledge to build apps for this platform

· Access to device to test your application

· Assistance with getting your application in the marketplace.

With this boot camp you get::

· 2 solid workshop days to rapidly build your WP7 Developer knowledge and beyond – covering major topics in depth, samples, exercises and expertise in Microsoft technologies

· Face-time with a developer device

· 50!! Demos/Examples

· Priority invite to Microsoft Canada’s deployment clinics to test your application(s) on a real device unless you have a relationship with Microsoft, these events may be your only opportunity before retail device availability!!!

· FREE go-to-marketplace support from Microsoft to get your application into the marketplace and potential promotion – you’ll be connected with a Microsoft evangelist to help you with getting your application(s) into the marketplace with potential for application promotional

· Information, 40+ samples & exercises to walk away with

Register today!  Use the code WP7BOOTCAMP to save $100.

http://winphone7bootcamp.com

3 Microsoft Canada Windows Phone 7 Night in Ottawa (featuring a developer device!) – Sep 2nd 2010

Join Christian Beauclair & Rick Claus from Microsoft Canada, along with Colin Melia from DreamDigital, for an evening about Windows Phone 7 in the flesh.  That’s right, they’ll be there in person, oh and so will a real developer device!

In October, Microsoft will start accepting application submissions on the mobile marketplace for Windows Phone 7 applications, with devices being available at retail shortly thereafter.

Will you be one of the first developers selling a cool application? Are you an IT Pro that wants to figure out how these devices fit into your organization?  To get to grips with this new mobile platform and build on your existing .NET and infrastructure knowledge, you’ll need to know the features of the new phone platform.

Visual Studio 2010 together with the WP7 tools make building applications a delightful experience. During this evening event, you’ll have the opportunity to see the phone in action, learn about the tools and understand how the phone integrates into your enterprise.

You absolutely must be registered to attend.

Register here: https://www.clicktoattend.com/invitation.aspx?code=150519

In-Depth Developer Training, Samples, Marketplace Assistance, Promotion, Device Face-Time & Loaner Device Access for Windows Phone 7

Windows Phone 7 devices are coming to market this Oct/Nov in several markets.

Time is running out to get in on the launch and test device access is vital for some applications.

Get these benefits from the Windows Phone 7 Boot Camp that I’m running, sponsored by Microsoft at their Canadian offices:

  • 2 solid workshop days to rapidly build your WP7 Developer knowledge and beyond – covering major topics in depth, samples, exercises and expertise in Microsoft technologies
  • 50!! Demos/Examples
  • Priority invite to Microsoft Canada’s deployment clinics to test your application(s) on a real device unless you have a relationship with Microsoft, this may be your only opportunity before retail device availability!!!
  • FREE go-to-marketplace support from Microsoft to get your application into the marketplace and potential promotion – you’ll be connected with a Microsoft evangelist to help you with getting your application(s) into the marketplace with potential for application promotional
  • Information, 40+ samples & exercises to walk away with

Due to a shortage with devices, Microsoft Canada has withdrawn the loaner program (substituting the deployment clinics) and a device cannot be present in all bootcamp cities.

There are many free resources on the web, but none offer these benefits along with interactive learning.

Want More?  How about, all this for less?  Use the promo code WP7BOOTCAMP to get $100 off.

Register today.

Live Meeting Presentation Today on Windows Phone 7 + OData + Silverlight + Azure

image

I’m doing a 1.5 hour Live Meeting presentation today at 16:00 ET on these hot topics for the Windows Azure User Group

The audience objectives include:

  • Learn key features of Silverlight, OData & the Windows Azure Platform
  • Learn about preparing an application for use with Windows Azure & SQL Azure
  • Learn stages and ways to deploy a full application to the Windows Azure Platform
  • Learn how Silverlight can interact with Windows Azure Platform technologies.

Register for this hot-topic event and participate remotely.

https://www.clicktoattend.com/invitation.aspx?code=147804

If you are looking for in-depth rapid training on developing for Windows Phone 7 development AND hands-on time with a device, then you should consider registering for the this major 2-day boot camp running across Canada.

Windows Phone 7 Boot Camp

Quick-Start Primer Video to Windows Phone 7 Tools, Data Access and Notification Services

I recently did a 1-hour screencast interview with Carl Franklin for Dot Net Rocks TV.

It’s a good primer for a few areas of Windows Phone 7 developer.

20100720 video

If you are looking for in-depth rapid training on developing for Windows Phone 7 then you should consider registering for this first major boot camp running across Canada.

Windows Phone 7 Boot Camp

The recording was done using the April refresh of the tools.  I’ll be following up with another one soon using the Beta tools to explain things like themes and application life cycle in more detail.

We covered the tools…

20100720 tools

The emulator…

20100720 emulator

Project types…

20100720 project types

 

Visual Studio Tools…

20100720 vstools

Mapping Applications…

20100720 mapapp

Data Binding/Access… to a service exposed through Windows Azure AppFabric Service Bus

20100720 dataaccess

Notification Services which is essential to building applications that receive information from the cloud.

 

20100720 notification

Hopefully the video gives you a good sense of what is possible, and if you want this speed of knowledge transfer or faster… go for the bootcamp.

Windows Phone 7 Boot Camp

Navigating Bus Stops with Open Data and Windows Phone 7

In a recent post I talked about Bringing Azure+OData+Silverlight Goodness to Open Data Apps in Ottawa.  To do this, I imported standardized transportation data (that I found for the city of Ottawa) into a SQL database and exposed it as OData using WCF Data Services on an Entity Framework model.  I subsequently published a sample database to Windows Azure to demonstrate use of the data in an adapted Silverlight application that uses the Open Data Application Framework.

The OData information is accessible through a RESTful interface.  Here are the root entities displayed in IE.

20100606 odata

Last Thursday evening, I did a presentation on building Silverlight applications for Windows Phone 7.  Given that there’s an OData client library CTP available for Windows Phone 7, I knocked up a Bus Stop ulity application to demonstrate to my audience.  To get started with Silverlight applications on WP7 you can download the free developer tools (vs. the designer tools which are extensions for Blend 4 RC currently) currently the April CTP version.  The developer tools also include the XNA Game Studio for creating XNA-based games.

Here’s are the two main features I set up…

20100606 menu

Do create my menu I went with the list-based project template and then replaced the listbox content with manual entries with tag values.  These tags are then used as the names of the XAML files to load.  Quick and dirty, but it works…

20100606 listcode

Selecting the first option brings up a screen that allows the user to enter a bus stop (by its number as displayed on bus stop signs in Ottawa) and then lookup the trip heading and time of the the next 10 buses stopping at that stop.

When declaring the text box to enter the number, the attribute settings InputScope="Number" is used to default the standard input panel to the number entry mode.  The "TelephoneNumber" value may have also been acceptable (to bring up the phone keypad keyboard with bigger numbers) since many people request this kind of information using their telephone and its keypad.

20100606 entry

The application then uses a proxy class derived from DataServiceContext (and created using the DataSvcUtil command line tool since the WP7 add-in for VS2010 Pro does not currently provide an Add Service Reference option on a project) to query the OData service (running locally or on Azure).

The results come back and use the very flexible ListViewItem control (with its Metro styling) to display the results, making use of Layout="TextAndDetails".

20100606 times

If the user had gone to the other main menu option, they’d be presented with this screen.

20100606 nearby

This shows their ‘current’ location and the bus stops nearby.  Again this calls the OData service using filter parameters to bring back only bus stops that are within a 1km block of the location.  The map shown is the Bing Maps Silverlight control set to Road mode – the same one as used for desktop Silverlight apps – and the bus stop icons are added as children to the map control with attached properties specifying their locations.  The navigation controls where turned off to maximise space, so I added two Windows Phone 7 Applicaiton Bar to allow the user to zoom in and out.  The user can pan around with their finger of course.  The bus stop icons could easily be made actionable in some way. 

Since the WP7 emulator has no GPS, the location was hard coded in.  One of the samples in the WP7 SDK shows how to use Reactive Extensions to simulate location information in a way that is easily switched later to real device data. 

While this kind of application needs fairly accurate location data, others don’t.  Perhaps just knowing the city would be enough if one had just landed in that city and wanted general information.  The location APIs for WP7 allow the developer to easily make a choice between slow and accurate (while the device GPS locks on to satellites) or quick and less accurate (by using available Wifi and mobile network information in conjunction with Microsoft’s cloud-based location services).

Once WP7 devices are released, and the city officially publishes this data set I’d expect a fleshed out and polished application of this kind to be quickly available ;-).