When it comes to application development on the Windows Phone platform things are on the move. Lessons are being learned from the iPhone and its usability experience, from the Android platform etc. The lesson learned is that you need to pay extra attention to how your application looks and feel.
You should not under estimate the possibility of usability and design being the selling point in a purchase decisions before feature richness in a case where two similar featured apps are compared, where one looks and feels good, and the other has an extra amount of features beyond the core functionality it should handle.
As i am on the look out for a UI toolkit to standardize our enterprise development at work on I´ll compile a list of libraries that could do the job as i find them. The criteria for the search is ease of use and finger friendliness. Hopeful others also find this list useful.
Fluid is an open source ui framework that aims to mimic the IPhone ui controls. It is hosted by CodePlex and at the time of writing the current beta release is from February 15, 2009. It is released with a Microsoft Public License (Ms-PL).
Fluid is maintained by a single developer by the looks from the “People” list and i can´t find anything that shows continued work on the project. The issue tracker show some new registrations but it´s uncertain if they will be fixed. My guess on Fluid is that it is a good starting point, and if you are after a iPhone look and feel it is a good UI library to extend and do continued development on.
A Open Source demo application called PasswordSafe that implements Fluid is available from CodeProject for download. The application also include support for Windows Mobile 6.5 gestures. Looking at the source code for PasswordSave i see that there first of all is no designer support. Secondly the application you create uses a “host” WinForm and then you create screens in code and run these screens from the host WinForm. The idea is not bad, but if you are used to WYSIWYG UI design you could be in for a more “hardcore” development experience. The benefit of this is that you have more control of your own user interface.
Silvermoon is another open source ui control lib. It has some of the same properties and aims to do the same as fluid. But where Fluid was copying the usability from iPhone, Silvermoon tries to mimic the behavior of the Windows Mobile 6.5 today screen and sub controls with some extra features. Have a look at this demo of beta 2 on YouTube.
Silvermoon uses OpenGL as the rendering engine, and thus enables rich animations and transitions.
At time of writing Silvermoon is out in a beta version 0.92 released with a Microsoft Public License (Ms-PL) on October 4, 2009.
The development “style” of Silvermoon is the same as with Fluid. The reason for this is (i think) mainly that the same developers does both of the projects. How Fluid and Silverlight will continue the development is uncertain, both projects look promising… but it could be time consuming to wait for bugfixes and new releases since they have only one developer, Thomas Gerber.
I like his ideas, and to have a end to end control library that gives a Windows Mobile 6.5 look and feel that is consistent through the application is great. Silvermoon is a candidate for use. The desicion must then be to use and maintain the existing functionality and continue and extend it when we need to.
Resco MobileForms Toolkit
“Developer perfection combined with graphic designer creativity creates an unprecedented toolkit. The components and libraries are designed to eliminate hardware limitations of mobile devices, such as small screen or lower performance. A ground-breaking technology — seamlessly integrated in the components — offers multiple benefits to the developer community.”
That is the statement that awaits me at resco.net. Resco is the first commercial toolkit i am looking to evaluate. Resco MFT can be purchased as Standard, Professional and Enterprise. with a price from $750 – $3000 USD. where Standard is a single developer license and the Enterprise is for unlimited developers at a single site.
The Resco controls looks like they offer great flexibility, and they support WYSIVYG in Visual Studio. An article detailing the strength of the controls can be found here. When it comes to the weaknesses i´ll have to come back to that. We have some developers using these controls out on client development and their feedback has been that the controls they use has flexibility and is easy to use.
SmootListBox is not a multi control library. It is a listbox implementation created by Fredrik Bornander that you navigate using your finger. The control is well explained through an article hosted on CodeProjet.
I´ve used this as a template for controls in several client solutions and i have found it is easy to implement and extend. Using this control you instantly get a new and look and feel to your application. Theming the list into your application just makes it feels more smooth and professional…
Mirabyte Touch Control Suite
Mirabyte is a commercial control suite. Their gallery display a nice set of useful controls that includes a TouchListBox control upporting finger based kinetic scrolling promising to be very responsive and smooth, supports multiple screen resolutions, intelligent item selection and stylish transition effects with sliding animation to all four sides of the screen. A ButtonBar and TitleBar, a TouchPicturBox that has a built in (stepped) zoom functionality and supports smooth scrolling operations using the finger. A TouchPictureButton, a nice looking GlassDialog control that can be used as a replacement for modal dialogs like MessageBox.Show(…); the background of the form is dimmed and either a generic dialog box is shown or a custom skin can be used (including alpha transparency!). They’ve created a YouTube demo of the control features that can be viewed here.
The Mirabyte controls can be purchased at €70 EUR (There’s a special offer at €50 EUR going on (2010-01-15) so if you are quick it still might be valid) .
beeMobile4.net has a set of single controls that can be purchased off their website. It’s not a complete suite, but a set of single controls that you purchase individually. A bit pricey for my liking but they have good looking controls. Each control costs around €40 Eur each.
Most interesting controls are the iWeel which allows the user to choose items from lists by rotating a cylinder. The items of the list are spread over the surface of the cylinder and behave much like iPhone’s date picker. The cylinder can be rotated by touching its surface and hence spinning it. The MessageBox which functionality is the same as the of the standard well-known MessageBox control. However, its stylish look, rounded corners as well as transparency give it modern and attractiveve design. The WaitingBar which informs the user of a lengthy background operation. It can operate as either a progress bar or a waiting bar. They also has a set of controls called TransparentControls that contains a transparent picturebox, checkbox, label, form image button and a control called a VistaButton. All of them looks quite nice.