2016-12-12 48 views
1

我想显示一个图像,如果扩展器被折叠并在展开时隐藏它。我尝试了以下,但它不起作用。有没有办法做到这一点,而不使用转换器?WPF - 隐藏/显示基于扩展器的图像IsExpanded

<Image x:Name="fgImage" Source="Resources/Images/MissingImage.png" Margin="0,96,258,-75" Height="110" VerticalAlignment="Top" HorizontalAlignment="Right" Width="110"> 
<Image.Style> 
    <Style TargetType="Image"> 
    <Setter Property="Visibility" Value="Visible"/> 
    <Style.Triggers> 
    <DataTrigger Binding="{Binding ElementName=orderDetailsExpander, Path=IsExpanded}"> 
     <Setter Property="Visibility" Value="Collapsed"/> 
    </DataTrigger> 
    </Style.Triggers> 
    </Style> 
    </Image.Style> 
</Image> 

回答

1

DataTrigger必须是这样的

<DataTrigger Binding="{Binding ElementName=orderDetailsExpander, Path=IsExpanded}" Value="True"> 

所有Image财产

<Image x:Name="fgImage" Source="Resources/Images/MissingImage.png" Margin="0,96,258,-75" Height="110" VerticalAlignment="Top" HorizontalAlignment="Right" Width="110"> 
<Image.Style> 
    <Style TargetType="Image"> 
    <Setter Property="Visibility" Value="Visible"/> 
    <Style.Triggers> 
    <DataTrigger Binding="{Binding ElementName=orderDetailsExpander, Path=IsExpanded}" Value="True"> 
     <Setter Property="Visibility" Value="Collapsed"/> 
    </DataTrigger> 
    </Style.Triggers> 
    </Style> 
    </Image.Style> 
</Image> 
+0

我知道我错过了一些愚蠢的东西。非常感谢! @gmetax – Steven

1

您DataTrigger需要的值,例如

Value="True" 

按照documentation,默认值是null