Building a Visual Studio Style Tabbed Interface with Caliburn

In the application I’m currently working I’m using an interface patten similar to Visual Studio with multiple tabs (work items) open at any one time. Caliburn has some great utiltity baked in for this style of application with their IPresenter Component Model.  Ultimately we’ll be building something that looks like:

Convention Based Event Aggregation in WPF and Silverlight Applications

One thing that can get pretty tedious very quickly in building composite UI’s in Silverlight and WPF is wiring up an event aggregator. Typically if a service or view model wants to subscribe to an event in the application you would declare a dependency on IEventAggregator and call Subscribe on it passing the method to invoke when the event is published.

Caliburn: Binding Conventions

Lately I’ve been playing around with Caliburn in WPF (and a little in Silverlight). One of the things I’ve really enjoyed is the convention based binding between the View and the ViewModel (Presenter). The default binding (DefaultBinder) helps with the more complex screen activiation by binding the Presenters collection and exposed Presenter objects on the ViewModel. It does all this binding based on the name of the control and the exposed property.

Is being Blendable worth it?

So I’ve been going over this with a few others lately, is ensuring your project is “Blendable” worth it?

Blendable MVVM: Frameworks

I’ve had a few emails from people wanting to see some of the concepts here made into a simple MVVM framework. To be honest I don’t believe it’s worth it. Most of ideas here are prevalent in other MVVM frameworks and they’ve all done a fantastic pulling them together in a cohesive manner.  Some one’s I’ve been looking at for use in a WPF project are: