No new content in this post, but wanted to share my findings on charting with MVVM on the phone.
I initially started with Visifire. They have some really nice charts and features out of the box but I kept hitting brick walls with databinding and MVVM. They do have some databinding but it isn’t enough, in my opinion, to use with a full fledged MVVM application. I ended up posting in their forum for assistance and as I expected they didn’t support databinding a specific property from xaml at that time. They were very helpful in providing alternative solutions but I wasn’t interested in binding from the code behind. Two weeks later they had fixed this specific issue and posted a link to the latest code. Wow, that’s service!
In the end, Visifire charts are not fully compatible with MVVM but they have a very good support/dev team and I fully expect them to catch up soon. Also searched around for third parties that have wrapped or extended Visifire charts for MVVM and found a few posts but nothing that looked really clean.
Next up was the chart controls in the Silverlight Toolkit. Most anyone who blogged about the Silverlight Toolkit charts linked to David Anson’s blog. He has several helpful posts:
- Updated collection of great Silverlight/WPF/Windows Phone Data Visualization resources!
- Windows Phone 7 Charting example updated to include reusable, platform-consistent Style and Templates
- New phone bits, same pretty charts
These along with a post (Databinding Multi-Series Charts) from Beat Kiener got be going quickly. This framework just felt right. I can’t put my finger on it but it was different than Visifire. This is what I have settled on for my WP7 app. I had to make no compromises to my application architecture (MVVM) or the quality of charts I use.
amCharts was the last option I found. I have only reviewed the demo solution for amCharts, which did have in xaml databinding for a single data series but didn’t see it for multiple. Can’t say for sure if they do or not without further research. I will try if/when the toolkit stops meeting my needs.
The Silverlight Toolkit and amCharts (Quick Charts for Windows Phone) have an open source license. Visifire has a linkware and a commercial license.
If anyone knows of other charting frameworks that work with WP7 please leave a comment.