I've finally finished a write up on the Proposal Design Pattern. This design pattern was originally presented in the November 1997 issue of Object Magazine, and hasn't really been seen since. I've been intending on writing this for some time, but the words never seemed to flow - until now.
The essence of the pattern is that real world “changes of state” are almost always agreed upon by accepting a proposal of that change that has been prepared in advance.
I'm working on a little project at the moment which is dynamically building a WPF user interface based on a configuration file loaded when the application starts. This involves code to manually create all of the bits and pieces that are normally specified directly in a Xaml file.
One useful shortcut I've found is to leverage .NETs built in TypeConverter framework - the same technique used by the Xaml loader itself.