Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LongListSelector中包含图像的批量数据_C#_Windows Phone 8_Silverlight 4.0 - Fatal编程技术网

C# LongListSelector中包含图像的批量数据

C# LongListSelector中包含图像的批量数据,c#,windows-phone-8,silverlight-4.0,C#,Windows Phone 8,Silverlight 4.0,下面是我的应用程序的一个屏幕,在每次对服务器(WCF)的搜索调用中加载大约100个项目 我有两个问题 One:目前,我正在将所有结果项分配给长列表选择器的itemssource,但我希望最初加载10项,当用户向下滑动到几乎结束时,再加载10项。我在很多应用程序(foursquare)中都看到过这种行为,但无法理解,因为我是silverlight的新手 Two:如果项目具有图像,则将PicturePath设置为服务器图像路径,否则不设置本地图像路径。问题是当图像被下载时,图像区域显示为空白,直到

下面是我的应用程序的一个屏幕,在每次对服务器(WCF)的搜索调用中加载大约100个项目

我有两个问题

One:目前,我正在将所有结果项分配给长列表选择器的itemssource,但我希望最初加载10项,当用户向下滑动到几乎结束时,再加载10项。我在很多应用程序(foursquare)中都看到过这种行为,但无法理解,因为我是silverlight的新手

Two:如果项目具有图像,则将
PicturePath
设置为服务器图像路径,否则不设置本地图像路径。问题是当图像被下载时,图像区域显示为空白,直到完全下载,然后开始显示图像,我需要它像foursquare显示一样,直到图像完全加载。下面给出了我的绑定代码以及我的要求


谢谢。

用一堆代码来回答这两个问题是没有意义的

关于第一个问题,您需要一种方法来检测用户何时已滚动到ListBox/LongListSelector的底部。您需要使用ObservableCollection而不是简单的列表,因为ObservableCollection会在向UI添加新项时通知UI

这个问题以前被问过几十次

关于第二个问题,最简单的解决方案是在ItemTemplate中使用两个图像,一个在另一个之上。这样,静态本地图像将在动态图像为空时显示,当下载动态图像时,它将覆盖静态图像。它是在静态图像的顶部渲染的,所以就好像静态图像不在那里一样

<Grid>
    <Image Source="Assets/StaticImageFromLocalCache.jpg" Width="400" Height="400" />
    <Image Source="Assets/DynamicImageFetchedFromInternet.jpg" Width="400" Height="400" />
</Grid>

这是两个独立的问题,应该分别提问。