This is a set of useful information on data binding in wpf:
http://interactiveasp.net/blogs/natesstuff/archive/2009/01/21/6-things-i-bet-you-didn-t-know-about-data-binding-in-wpf.aspx
One of the very useful items is the list of fallback bindings (so you can bind to A if it is present else B &c) that makes for very flexible components.