目前我们正在使用HubTile显示覆盖的大(50-70)个图像和文本。
<toolkit:HubTile Margin="0,12,12,0"
Title="{Binding title}"
Message="{Binding itemLink}"
Source="{Binding media}"
GroupTag="BindingHubTile"
Style="{StaticResource HubTileStyle1}">
</toolkit:HubTile>
<TextBlock Height="Auto" FontSize="14" FontFamily="{StaticResource PhoneFontFamilyLight}"
TextWrapping="Wrap" Text="{Binding votes}" TextTrimming="WordEllipsis" VerticalAlignment="Bottom"
Foreground="{StaticResource PhoneForegroundBrush}" TextAlignment="Right" Margin="0,0,15,-7" />
源绑定到从Web服务器检索的URI,然后允许手机下载图像并显示它。问题是,有了这么多的图像,我们发现UI正在锁定。
我们的hubtile通过listbox.ItemSource加载到列表框中。
有一个简单的方法吗?
答案 0 :(得分:1)
当你设置为图像时 - 它在后台下载的URI并没有锁定用户界面 - 经过测试。
唯一剩下的就是找到锁定它的位置。
我有一个类似的项目,但我创建了CustomControls来填充ListBox。包含自定义控件 - 日期字段,文本和图像。
图像加载如下:
BitmapImage image = new BitmapImage(new Uri(article.ImageURL));
NLBI.Thumbnail.Source = image;
所有图片都在背景中加载异步,并且UI可用。