A Caliburn.Micro recipe: filters « Marco Amendola
August 10, 2010 in Silverlight, WPF
Extension to Caliburn.Micro to allow implementation of filters similar to what is found in Caliburn.
August 10, 2010 in Silverlight, WPF
Extension to Caliburn.Micro to allow implementation of filters similar to what is found in Caliburn.
August 10, 2010 in Windows Phone 7
Two days ago, Rob Eisenberg released a sample of Caliburn.Micro for Windows Phone 7. I spent a few minutes today creating a Windows Phone 7 Caliburn.Micro project template for Visual Studio 2010 from that project. It should help you get started more quickly on your WP7 projects.
Download and copy the Caliburn.Micro.WP7.zip file to the following directory on your computer: \Documents\Visual Studio 2010\Templates\ProjectTemplates\Silverlight for Windows Phone
Start up Visual Studio and create a new project. You will see an option for Caliburn.Micro (WP7):
After the project is created, you will see the following project structure:
Fix the reference to Caliburn.Micro (download from CodePlex), set a breakpoint in the constructor of MainPageViewModel, and run the application. You will see that when navigation happens to MainPage, that MainPageViewModel is created.
Continue execution to view the app in the emulator:
I like Rob’s idea of doing View-first for pages and ViewModel-first for components on a Page. I have chosen the following naming: MyPage/MyPageViewModel (pages) and MyView/MyViewModel (user controls).
August 4, 2010 in Windows Phone 7
The user is shown multiple views of the same item side by side using the Pivot control. The buttons on the Application Bar remain consistent across Pivot pages.
Example: E-mail (all, unread, urgent, flagged); Appointment (details, attendees)
(video)
August 4, 2010 in Windows Phone 7
The user is presented with a panorama containing multiple pages of content. The first is a list that acts as a menu. Clicking on a list items takes you to another panorama with the specific content. The Application Bar is not used.
Example: AP Mobile
(video)
August 2, 2010 in Design, Windows Phone 7
The July 2010 release of the UI Design and Interaction Guide for Windows Phone 7 is a document that all designers and developers of Windows Phone 7 applications need to become thoroughly familiar with. It is a beautifully laid out 101-page document that discussed the phone’s capabilities, controls, and interactions. As I read the guide, I took notes that I could refer to quickly as needed. The result is a 10-page summary of the UI Design & Interaction Guide for Windows Phone 7. I hope others find it useful.
July 30, 2010 in Silverlight, Windows Phone 7
Silverlight, WPF, and Windows Phone 7 developers should consider using the Model-View-ViewModel (MVVM) pattern for developing their LOB applications. One choice for MVVM is Caliburn.Micro developed by Rob Eisenberg.
Here is a link to the documentation topics:
I know Rob has been working on some WP7 goodness that should be out soon. Looking forward to the release.
July 28, 2010 in Windows Phone 7
Updated for Version 1.3 released September 2010.
After going through the Windows Phone 7 Application Certification Requirements document, I created this summary of the main points for quicker reference than the 27 pages of the September 2010, version 1.3 document.
· Over the air install up to 20MB;
· disclose additional data package if greater than 50MB;
· max XAP size 400MB;
| Description | Pixels | File Type | Required | Location |
| Application Icon | 62 x 62 | PNG | Required | XAP |
| Application Tile Image | 173 x 173 | PNG | Required | XAP |
| Device application icon | 99 x 99 small173 x 173 large | PNG, 262 dpi | Required | Marketplace catalog |
| Desktop application icon | 200 x 200 | PNG, 262 dpi | Required | Marketplace catalog |
| Panoramic background art | 1000 x 800 | PNG, 262 dpi | Optional | Marketplace |
| Screenshot | 480 x 800 | PNG | 1-8 Required | Marketplace catalog |
· First screen render within 5 seconds (use splash screen)
· Responsive to user input within 20 seconds
· Chat, instant messaging, or other person-to-person communication applications that all creation of accounts via phone device, must verify that user is at least 13 years old
· “Opt-in” consent for publishing personal information to any service or other person
· “Opt-in” consent for push notifications
· User-friendly error message on exception
· Visual progress bar with cancel option for time consuming activities
· Back button in games to present in-game pause menu or main menu with resume option
· Message if Location Service turned off in a location-aware application
· Explicit permission on first use of toast or tile notification
· Explicit permission on first run of application under a locked screen
· Apps that play their own background music must ask before stopping or adjusting music playback from Music + Video Hub
· Enable/disable toast notification
· Enable/disable tile notification
· Enable/disable application from running under a locked screen
· Use/Override music from Music + Video hub
· Control own background music/adjust hub music (ex: volume)
· May not require the user to pay outside of Windows Phone Marketplace to activate, unlock, upgrade, or extend usage of the application
· May not sell, link to, or promote mobile plans
· May not consist of, distribute, link to, or incent users to download, or otherwise promote alternate marketplaces for applications and/or games
· Must not jeopardize the security or functionality of phone devices or Marketplace
· Advertising must comply with http://advertising.microsoft.com/creative-specs
· Apps that allow purchase of music content must include Windows Phone music Marketplace as an option.
· For music not purchased through Windows Phone music Marketplace, app must include its own playback
· Content restrictions include: licensed, copyrighted, illegal, obscene, indecent, violent, defamatory, libelous, slanderous, threatening, hate speech, discriminatory, adult-related, promotes illegal activities, excessive alcohol, tobacco, weapons, drugs, violence, profanity
· PInvoke, COM interoperability, debug symbols, reflection were it affects phone capabilities, uncaught exceptions
· Must not include viruses, malware, or malicious software
July 26, 2010 in Design
I had the opportunity to take the course, Engineering the User Experience – Essentials for Software Professionals, from Infragistics using the online on-demand option. The course has the following objectives:
The course is presented online via Silverlight, takes approximately 3 hours to complete, and costs $395. For a limited time, when you purchase a NetAdvantage product this course is included for free.
The first part of the training defines User Experience (UX) as including usability and appeal and states the case of why UX is important. More content is this area would have been useful.
June 21, 2010 in Pragmatic Programmer
Tip 3 in The Pragmatic Programmer states:
Provide Options, Don’t Make Lame Excuses
For one day keep track of what you say in meetings, on the phone, or through e-mail and categorize them as:
You don’t have to share your list, but blog/comment about the experience.