Today I worked on statements. They flow pretty naturally out of the sessions functionality. I still have a lot of work ahead of me, so fortunately I only found two new issues today. I was able to rework Xaml in both cases fairly easily. Binding in it’s Element form is not allowed. Fortunately,...

I started working on the most complicated part of the UI: Sessions. There are a lot of different view models and views related to this part. Fortunately, by now, I think I have found most of the issues. But I’m still encountering a few new issues here on day six. Below is the customary screenshot...

Well, I’m pleased to say that on Wednesday I only encountered one new* issue during the port. ListBox does not support grouping. One neat thing in WPF is that all the items controls supported grouping. One of the reports we had was a set of master/details grids where the master was a grouped ListBox...

On Tuesday I spent a decent amount of time fleshing out the last remaining features under the Options menu. I then did some general reorganization to the project structure. Along with the port to Silverlight, I’ve been upgrading the application to use Caliburn 2.0 which is working out exceedingly...

On Monday I spent a good four hours working on the port. I decided to flesh out the functionality of the Main Menu. As I mentioned before , none of the menu controls available support commanding. Fortunately, Caliburn has its own mechanism which is much richer than what you get out of the box anyways...

Friday I only had a few hours to work on the port. I thought I might look into what it would take to add the main menu. It’s an important part of the shell that I completely skipped in my first pass. Unfortunately, there aren’t really any free or open source menu controls that I could find...

This is a true story. It’s a story about porting a non-trivial WPF application, NHProf , to Silverlight 4. The story begins today with my first actual work on the porting process. Microsoft has been preaching how easy it is to move between these platforms. Are they telling the truth? I’ll...

Yesterday I delivered my talk, “Build Your Own MVVM Framework,” at Mix. Thanks to all who came out to listen and allow me a short time to share some of my ideas. I’m very grateful to have had this opportunity. Thanks also to all who voted for the talk. If you were not able to make it...

I’ve heard some developers asking about UI testing lately. Specifically, there have been some questions about what we did with NHProf. So, I thought I would write a little bit about that here. There are a variety of different types of tests you can do. In my experience some have a better ROI than...

Hooray!!! I finally released Caliburn v1 to RTW and got the official site launched ! This has been a long time coming and I could not have done it without the generous help and support of the .NET community, family and friends. Many individuals contributed by finding bugs, submitting patches, recommending...

On Friday I published the Release Candidate for Caliburn. You can get it here . I’m hoping to only do bug fixes and a few minor changes between now and release. There have been quite a few important changes since the Beta: Refactored assemblies for greater ease of use. Implemented an Application...

Recently Glenn Block asked some questions of the community concerning what support Microsoft should offer for the MVVM design pattern in WPF/Silverlight. I’d like to answer that question here, but in a round-about manner. I’m going to use this as an opportunity to talk about the origins of...

Today is a long awaited day for me. Caliburn is now in official Beta. There have been many bug fixes and a ton of new features since the Alpha release last October. We’ve also been dogfooding it on several projects, one of which is NHProf . I wanted to use this post as an opportunity...

The Caliburn.Testability assembly contains various classes related to unit testing a UI. You can use the BindingValidator to validate data bindings on DependencyObjects, DataTemplates and Styles. The easiest way to access this functionality is through the static Validator class. It has several...

Caliburn has a new home on CodePlex . You can find it at http://www.codeplex.com/caliburn . Additionally, I have added a full set of documentation that is available online . The documentation loosely follows the samples I have created for the framework which can be found in the 'samples'...