If you have ever tried to create a Windows Store application using the MVVM pattern then you will probably have found that the Visual Studio project and item templates are a bit cumbersome. I often find myself adding a new page to my projects using one of the default templates, only to need to rewrite it to follow the MVVM pattern before I can even start adding application specific logic. What if there was a way to take advantage of the selection of project and page templates provided by Visual Studio, but have them produce fully MVVM compliant code?
Well today I’d like to announce the release of a free extension for Visual Studio 2012 (including the Express editions for Windows 8) that provides just that. It is based upon the open source Okra App Framework, and provides almost all of the Visual Studio Windows Store templates in an MVVM friendly manner.
What Templates are Provided?
There are two types of template included, project templates and item templates. The project templates are designed to get you started with a new application and provide exactly the same behaviour as the default Visual Studio templates (but written following the MVVM pattern).
- Okra Basic App - A single-page Okra App Framework project with no predefined controls or layout.
- Okra Grid App - A three-page Okra App Framework project that navigates among grouped items arranged in a grid. Dedicated pages display group and item details.
- Okra Split App - A two-page Okra App Framework project that navigates among grouped items. The first page allows group selection while the second displays an item list alongside details for the selected item.
Also included are a number of item templates that allow you to add new pages to any existing Okra App Framework based application, whether created using the project templates or not.
- Basic Page (MVVM)
- Split Page (MVVM)
- Items Page (MVVM)
- Item Detail Page (MVVM)
- Grouped Items Page (MVVM)
- Group Detail Page (MVVM)
- Search Contract (MVVM)
- Share Target Contract (MVVM)
- Settings Pane (MVVM)
As I have discussed the new “Windows Store MVVM Templates for the Okra App Framework” make it quick and easy to implement pages following the MVVM pattern for use in Windows Store applications. The behaviour of all the templates has been designed to be identical to the default Visual Studio templates, with the added benefit of clean separation of code, unit testability and design-time data
Thanks for the heads up on this Andy (and nice work!). I think you're right, that my readers might find this useful. And heck, if they don't I DO! :)
Related Past Post XRef:
The first step in gestating a Metro app... Cocoon