Portable Library – Share your libraries between multiple technology

Have you ever create an application where you want to share resources between them but you had to create multiple libraries to because those project use different compiler? If your like this often happen. In my case we face that issue. To solve the issue we had to create multiple libraries and refer class using linked files in the project. This is what we have to do in some project where we have a Silverlight 4 app and a Windows Phone 7 app. But this is not the most efficient way to do it.

Microsoft is now offering a solution for that kind of issue. The solution is called Portable Library, which is currently in CTP. So now you can create a single class library in which you can select which kind of project it should be compatible with. You should give it a look, because this may help you solve many issue and save times related with having common class libraries for multiple technologies.

To download the tools: http://visualstudiogallery.msdn.microsoft.com/b0e0b5e9-e138-410b-ad10-00cb3caf4981/

For more information:
http://blogs.msdn.com/b/bclteam/archive/2011/01/19/
announcing-portable-library-tools-ctp-justin-van-patten.aspx

Regards,
LP

Windows Phone 7–Network Connectivity

Recently I've been working on a project and we discovered something that have some impact on the performance of a Windows Phone application. This is probably a mistake that we did when implementing the code, but it may be the kind of mistake that many developer will do.

Quickly, each time we were calling the web service we were validating the network connectivity by validating the property “ NetworkInterface.NetworkInterfaceType ”. Behind that property, there is a process that validate the connectivity. This process is calling a page “http://www.msftncsi.com/ncsi.txt” to see if there is any connectivity and which type of connectivity. But the problem is that is done synchronously. So in our case we were calling multiple times this process, which result to execute the process of validating the Url mention before synchronously multiple times.  So each web service call must wait for the network validation before executing the call. And because it’s on the web the response can be fast and can also be very long before we get the response.

In our case we did implement a wrapper that make sure that the call is not done to often. This help us improve the performance of the application start-up. Also this help to improve activation process after the application Tombstone.

So make sure to validate our Windows Phone 7 application by using a tool like fiddler. This will help you improve the performance and stability of your application.

Regards,
LP

Windows Phone Controls

Almost 4 month have passed since the release on the market of the Windows Phone devices. With now over 8,000 apps, a lot of code have been written. So many controls manufacturer have release controls for Windows Phone 7. Some are free and some not. But in the end the is  now a good set of controls available on the market to help the developer to build nice and appealing application.

Silverlight Toolkit for Windows Phone (Free)

Recently, the Silverlight Toolkit for Windows Phone was update. This release provided some new controls and some improvement on the existing controls.

New feature:

  • TiltEffect
  • PerformanceProgressBar

Download: http://silverlight.codeplex.com/releases/view/60291

More information: http://www.jeff.wilcox.name/2011/02/feb2011-sl4wptk/

 

Telerik RadControls for Windows Phone (Paid)

Telerik is also providing some nice controls. Telerik provide nice transition and animation controls. We used some of those controls some of our recent project. They are currently in beta but they are working like RTM product. I had the chance to be in contact with the dev team to help us solving some issue in the beta and i can tell you that the team is really dedicated to provide the best controls.

  • Application Frame
  • Transition Controls
  • many more

Download: http://www.telerik.com/products/windows-phone.aspx
Sample App: zune://navigate/?phoneAppID=fd55f526-d6f7-df11-9264-00237de2db9e

telerik_radcontrols_0telerik_radcontrols_4

 

Component Art (Paid)

Last week ComponentArt released a version of their Data Vizualisation for Windows phone. This set of controls looks very nice (i didn’t time to test the control, but i will review the controls in a couple of days). If you plan to create a dashboard with some Charts, Gauges, Maps, Gridviews, etc i suggest you to give a look at this set of controls.

Sample App: zune://navigate/?phoneAppID=e13ba532-242b-e011-854c-00237de2db9e

Download: http://www.componentart.com/products/dv/wp7.aspx

componentart_demo_1componentart_demo_4componentart_demo_3

 

Coding4Fun Tookit (Free)

This open source project provide some nice feature that are not available in any other project. This project is a good complement and a good base for any Windows Phone project.

Controls:

  • About Prompt
  • Input Prompt
  • Progress Overlay
  • Round Button
  • Round Toggle Button
  • Memory Counter
  • TimeSpan Picker

Data Helper:

  • PhoneHelper for getting data out of the WMAppManifest file

Converter:

  • Boolean to Visibility
  • String To Visibility
  • Themed Image Converter
  • Inversed Theme Image Converter
  • Visibility to Boolean

Download: http://coding4fun.codeplex.com/

aboutPrompt_2_thumbbuttons_2_thumboverlay_2_thumb

 

WP7Contrib (Free)

This set of controls provide feature that help to work with MVVM Light. The feature are mostly behind the hood, like Cachine, Messaging, Service and some ui controls.

Download : http://wp7contrib.codeplex.com/

 

Developing application for Windows Phone 7 can now be done using some controls (without having to create them manually). Those controls provides rich visual and are easy to implement. So creating a portable dashboard for a sale department or a social network application is now an easy task with all those controls. So give it a try, like we did in our projects.

Regards,
LP

WP7Contrib now available on Codeplex.com

This weekend a group of person release the first beta version of the WP7Contrib component. This component provide some helper which help simplify WP7 development. They also included some UI controls.

This component is build to work seamlessly with MVVMLight. They integrated some other framework like JSON.NET, Silverlight Serializer and Reactive Extensions for .NET (Rx).

Let give a try: http://wp7contrib.codeplex.com/

Regards,

LP

Circular navigation on Windows Phone 7 : How to fix it?

When we develop an application for Windows Phone 7. One of the problem that a developer will face at the most is the circular navigation. On the phone, the navigation service handle the stack used by the back button. So each time we call the method Navigate of the NavigationService, a new entry is stored in the stack. On the other side there are some rules that a developer must follow to pass the certification on the Marketplace:
- circular navigation is not allowed
- the back button on the home page must exit the application.

There is some times that the scenarios doesn’t fit the rules for the Marketplace. So we end up more often with a circular navigation. Also which doesn’t help, it’s that we don’t have access to modify the navigation stack. This issue probably occurred very often in the certification process. First because, the developer did look at the Requirement documentation before creating his application. And second, because there is some times that the limitation doesn’t give us much choice.

(Image taken from the Windows Phone team blog)

 

So Microsoft listen and provide us with a solution. I’m glad because i had to use it in one of our application recently. The solution is pretty simple, we have to add a class in our application. Instantiate that class in the App class (App.xaml.cs). After what, we continue to handle the navigation as usual, but if we forgot to handle the back navigation or we face a scenario where we cannot handle the back navigation properly, we just have to navigate to the desired page (ex: navigate to the home page). At that time, if the class identify a circular navigation it will automatically handle the back navigation for us until we end up to the specified page.

But don’t be to lazy, and don’t rely on that mechanism. You should be aware of the Marketplace requirement first and follow them. But if in a specific case you don’t have a choice then you have a solution.

Get the code:
http://create.msdn.com/en-us/education/catalog/article/nln-serv-wp7

Get more information about the non-linear navigation:
http://windowsteamblog.com/windows_phone/...silverlight-applications.aspx

I hope this will help you.

Regards,
LP

About the author

Louis-Philippe Pinsonneault is a senior .NET developer and trainer at Runatserver. He has over 10 years of experience with . NET technology. He is a certified Microsoft Certified Professional Developer (MCPD) and a Microsoft Certified Technology Specialist .NET Framework 3.5 ASP.NET Application. He also teaches ASP.NET at Technologia, Montréal. He was awarded an MVP for Device Application Developement in 2010 and 2011.

Microsoft Most Valuable Professional

Microsoft Certified Professional Developer

Microsoft Certified Technology Specialist

View Louis-Philippe's profile on LinkedIn

Page List

Widget Twitter not found.

Root element is missing.X

Month List