title: WPF Nested DependencyProperty Value Coercion
body: <p>I've built a <code>UserControl</code> for selecting a <code>Color</code> with a <code>DependencyProperty</code> for the selected color, and a <code>CoerceValueCallback</code> that ensures that selected colors are fully opaque and fully bright. If I add this control to a window, and bind the background color of the window to the selected color property of the control, everything works as I expect. I can push "bad" colors into the control using a button, but the value coercion logic ensures that "valid" colors are stored instead, and both the control and the window background display the "valid" colors instead of the "bad" colors that were pushed in.</p>
  
  <p>However, if I try to use this control within another <code>UserControl</code> that has its own <code>DependencyProperty</code> for selected color, and use a two-way binding to connect the two together, the value coercion logic doesn't work as I expect. The outer control keeps the "bad" colors that are pushed into it, regardless of any value coercion that happens on the inner control.</p>
  
  <p>Is there a way to force coerced values from the inner control to sync back to the outer control without having to re-implement the value coercion logic on the outer control as well?</p>