Почему я получаю DependencyProperty.UnsetValue при преобразовании значения в MultiBinding?

У меня есть чрезвычайно простой IMultiValueConverter, который просто два значения ИЛИ. В приведенном ниже примере я хочу инвертировать первое значение, используя такой же простой логический инвертор.

<MultiBinding Converter="{StaticResource multiBoolToVis}">
    <Binding Path="ConditionA" Converter="{StaticResource boolInverter}"/>
    <Binding Path="ConditionB"/>
</MultiBinding>

и инвертор:

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
}

Когда я включаю boolInverter, первое значение в MultiValueConverter становится «DependencyProperty.UnsetValue». Нет проблем, когда я не использую конвертер (кроме логики, к которой я стремлюсь, конечно).

Я что-то пропустил? Пошаговое выполнение отладчика показывает, что InverseBoolConverter правильно инвертирует значение, которое я передаю, но затем это значение не «отправляется» в MultiValueConverter.

Ответы на вопрос(1)

Ваш ответ на вопрос