38

Have multitrigger, one of the conditions is not null, so if StowedAssetDetailedThumbnailViewModel != null then set template

<Style.Triggers>
    <MultiTrigger>
        <MultiTrigger.Conditions>
            <Condition Property="IsSelected" Value="true" />
            <Condition Binding="{Binding Path=StowedAssetDetailedThumbnailViewModel,
                                         Converter={StaticResource isNull}}"
                       Value="False"/>
        </MultiTrigger.Conditions>
        <Setter Property="Template" Value="{StaticResource SelectedTemplate}" />
    </MultiTrigger>
</Style.Triggers>

Using simple converter:

return isNull == null;

the error is Must have non-null value for Property

UPDATE: Thanks, the final solution is

<Style.Triggers>
    <MultiDataTrigger>
        <MultiDataTrigger.Conditions>
            <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}"
                       Value="true" />
            <Condition Binding="{Binding Path=StowedAssetDetailedThumbnailViewModel,
                                 Converter={StaticResource isNull}}"
                                 Value="false"/>
        </MultiDataTrigger.Conditions>

        <Setter Property="Template" Value="{StaticResource SelectedTemplate}" />
    </MultiDataTrigger>
</Style.Triggers>
itsho
  • 4,640
  • 3
  • 46
  • 68
nelly2k
  • 781
  • 1
  • 10
  • 28

1 Answers1

52

You'll want to use a MultiDataTrigger in this case. A MultiTrigger can only be triggered by dependency properties.

Patrick Y
  • 803
  • 8
  • 10