【发布时间】:2013-09-15 16:28:38
【问题描述】:
我正在使用 LongListSelector 在 Windows Phone 8 上的 XAML 和 C# 中制作无限滚动提要。要显示的项目从 Web 提要加载并使用数据绑定显示,每个项目的其中一个字段是图像,该图像也是从 Web 加载的。
图片大小不一,但我没有在图片控件上设置宽度或高度,只是Margin="10",这样它就可以填满屏幕的宽度,并且是图片的正确高度。
DataTemplate 中的图像控件如下所示:
<Image Source="{Binding Source.ImageUrl}" Margin="10" Stretch="UniformToFill" />
但是,我收到了一个 System.Windows.LayoutCycleException,上面写着:“检测到布局周期。布局无法完成。”。
这似乎是因为<Image> 控件在图像下载之前被放置到 LongListSelector 中。然后,一旦下载了图像,<Image> 控件就会调整大小,从而导致错误。如果我在<Image> 控件上设置Height="300",则不会出现异常。
我仍然希望在图像下载之前显示提要,并且提要中可能有很多图像,因此它需要有效地使用内存。
有没有办法解决这个问题?
【问题讨论】:
-
也有这个问题!默认设置width属性解决了这个问题,但我也想知道我们如何使用未定义的图像!
标签: c# xaml windows-phone-8