当图像为空时,设置另一个默认图像
本文关键字:图像 设置 另一个 默认 | 更新日期: 2023-09-27 18:30:27
你能看到这个标签吗:
<Image Source="{Binding Image}" Stretch="UniformToFill"/>
但是下面呢?我正在尝试做的是,当图像为空时,设置另一个默认图像。这可能吗?
<!-- Grid-appropriate 250 pixel square item template as seen in the GroupedItemsPage and ItemsPage -->
<DataTemplate x:Key="Standard250x250ItemTemplate">
<Grid HorizontalAlignment="Left" Width="320" Height="240">
<Border Background="{StaticResource ListViewItemPlaceholderRectBrush}">
<Image Source="{Binding Image}" Stretch="UniformToFill"/>
</Border>
<StackPanel VerticalAlignment="Bottom" Background="{StaticResource ListViewItemOverlayBackgroundBrush}">
<TextBlock Text="{Binding ShortTitle}" Foreground="{StaticResource ListViewItemOverlayTextBrush}" Style="{StaticResource TitleTextStyle}" Height="48" Margin="15,0,15,0"/>
</StackPanel>
</Grid>
</DataTemplate>
添加一个带有DataTrigger
的Style
。 例如类似
<Image Stretch="UniformToFill">
<Image.Style>
<Style TargetType="Image">
<Setter Property="Source" Value="{Binding Image}"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Image}" Value="{x:Null}">
<Setter Property="Source" Value="Images/Default.png"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
注意本地值的优先级。
我不确定您是否需要触发器 当我需要在绑定值无法转换时指定值时,我通常使用如下所示的回退值。
<Image Source="{Binding Path=ImageURI, FallbackValue='SomeImageURI'}" />
Microsoft回退值属性