在下面的代码中,当用户在ListBox中选择一个项目时,我使用了不同的图像ImageUrlHoverString
。
这是一个很大的图像,我在加载图像时看到了一些差距。 你知道一个简单的方法来预加载这个图像,所以这个故障不再发生了吗?
<Image x:Name="FloorImage"
Grid.Row="1"
Margin="0,0,0,0"
Height="70">
<Image.Style>
<Style TargetType="{x:Type Image}">
<Setter Property="Source" Value="{Binding ImageUrlString}" />
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBoxItem}}, Path=IsSelected}" Value="True">
<Setter Property="Source" Value="{Binding ImageUrlHoverString}"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
答案 0 :(得分:0)
我发现了一种易于实施的解决方案。基本上我创建了另一个隐藏可见性的图像,加载了ImageUrlHoverString
<Image x:Name="FloorImagePreload"
Width="200"
Height="80"
Visibility="Hidden"
Grid.Row="1"
Margin="0,0,0,0">
<Image.Style>
<Style TargetType="{x:Type Image}">
<Setter Property="Source" Value="{Binding ImageUrlHoverString}" />
</Style>
</Image.Style>
</Image>