MultiDataTrigger vs DataTrigger с многосвязным интерфейсом

Я столкнулся с ситуацией, когда я легко могу достичь той же функциональности, используя MultiDataTrigger или, альтернативно, используя DataTrigger с MultiBinding. Существуют ли какие-либо существенные причины, чтобы предпочесть один подход по сравнению с другим?

С MultiDataTrigger:

<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding Path=SomePath}" Value="SomeValue"/>
        <Condition Binding="{Binding Path=SomeOtherPath, Converter={StaticResource SomeConverter}}" Value="SomeOtherValue"/>
    </MultiDataTrigger.Conditions>
    <MultiDataTrigger.EnterActions>
        <BeginStoryboard Storyboard="{StaticResource MyStoryboard}"/>
    </MultiDataTrigger.EnterActions>
</MultiDataTrigger>

С MultiBinding:

<DataTrigger Value="foo">
    <DataTrigger.Binding>
        <MultiBinding Converter="{StaticResource fooConv}"/>
            <Binding Path=SomePath/>
            <Binding Path=SomeOtherPath/>
        </MultiBinding>
    </DataTrigger.Binding>
    <DataTrigger.EnterActions>
        <BeginStoryboard Storyboard="{StaticResource MyStoryboard}"/>
    </DataTrigger.EnterActions>
</DataTrigger>

Ответы

Ответ 1

Multibinding требуется конвертер для всех, кроме самых редких обстоятельств (с использованием StringFormat).

MultiTrigger требуется только конвертер, чтобы получить ваши результаты привязки в boolean s.