Windows Phone 7 was released with support for Exchange Email, Calendar and Contact synchronisation but unlike previous versions of Windows Mobile has no support for Tasks. We wanted to create a client application for Windows Phone 7 which would expose the same functionality as the Windows Mobile built-in Tasks application but using the Windows Phone 7 “Metro” design language and other features specific to Windows Phone.
A big challenge in the project was overcoming limitations in the Silverlight programming model for Windows Phone 7. Peter Foot used his twelve years of experience of working with Pocket Outlook APIs and synchronisation to build an application which provided a full synchronising client for Windows Phone 7 against Exchange 2003, 2007 and 2010 server types. He also overcame the following limitations:-
- Locally updating an applications Live Tile prior to Windows Phone 7.5
- Wireless Binary XML (WBXML) Serialization
- Working around behavioural issues with the Silverlight LongListSelector control
- Localising a Silverlight application into six different languages
- Localising Silverlight Toolkit controls
To provide an elegant Metro user interface for the application Peter examined the built-in applications for Calendar, Contacts and Email. Where possible he implemented the same transition animations, fonts and layout and iconography as the built in applications to provide an app which seamlessly integrated with Windows Phone.
Tools and technologies used in this solution
- Visual Studio 2010
- Expression Blend 4
- Exchange Server
Later updates have added support for Windows Phone 8 features, a custom Uri scheme and API to allow other apps to programmatically create tasks. Further updates are planned for Windows Phone 8.1.