Priority binding
Binding supports the FallbackValue
property, if the desired source property is not available. This is good, but we might want to show the user some other useful information until the actual binding source is available. We might even want a list of bindings, applied in the order of their configured priority. We'd want the property system to attempt to pick up the available binding source with the highest priority for us. If a lower priority binding source is bound and a higher priority binding source becomes available, we'd want the property system to use the newly available binding source. And finally, we would want to be able to use a static fall-back value, if no binding source is available.
Basically, WPF Priority Binding is here to support just this scenario. We can define a list of bindings in the order of their priorities. The property system picks up the available property with the highest priority, and if a binding source is available with a higher priority, it updates...