title: Why do I get a DependencyProperty.UnsetValue when converting a value in a MultiBinding?
body: <p>I have an extremely simple IMultiValueConverter that simply OR's two values. In the example below, I want to invert the first value using an equally simple boolean inverter.</p>
  
  <pre><code>&lt;MultiBinding Converter="{StaticResource multiBoolToVis}"&gt;
      &lt;Binding Path="ConditionA" Converter="{StaticResource boolInverter}"/&gt;
      &lt;Binding Path="ConditionB"/&gt;
  &lt;/MultiBinding&gt;
  </code></pre>
  
  <p>and the inverter:</p>
  
  <pre><code>public class BoolInverterConverter : IValueConverter
  {
      #region IValueConverter Members
      public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
      {
          if (value is bool)
          {
              return !((bool)value);
          }
          return null;
      }
      public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
      {
          throw new NotImplementedException();
      }
      #endregion
  }
  </code></pre>
  
  <p>When I include the boolInverter, the first value in the MultiValueConverter becomes a "DependencyProperty.UnsetValue". There are no problems when I do not use the converter (other than not the logic I am aiming for, of course).</p>
  
  <p>Am I missing something? Stepping through the debugger shows that the InverseBoolConverter is properly inverting the value I pass it, but that value is then not being 'sent' to the MultiValueConverter.</p>