WP7:如何在一个视图中有效加载100多张小图片

时间:2012-07-03 13:38:16

标签: windows-phone-7 listbox

我正在尝试制作一个长ListBox,其中每个ListBoxItem都是一个内部有一个小的100x100徽标的磁贴。现在它非常慢 - 使用超过5-6秒才能变得敏感。由于图像是从web异步下载的(并且每个图像都存储在每个自己的模型实例中),我不知道如何检查它们何时全部下载(即没有进度指示器来覆盖延迟)。

您是否知道如何以最有效的方式做到这一点?

XAML:

                 <ListBox>
                    <ListBox.ItemsPanel>
                        <ItemsPanelTemplate>
                            <toolkit:WrapPanel />
                        </ItemsPanelTemplate>
                    </ListBox.ItemsPanel>

                    <ListBox.Template>
                        <ControlTemplate>
                            <ItemsPresenter />
                        </ControlTemplate>
                    </ListBox.Template>

                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel>
                                <ListBoxItem>
                                    <Grid Name="ChannelTile" Tap="ChannelTile_Tap">
                                        <Rectangle Fill="{StaticResource LightGrayColor}" />
                                        <Image Style="{StaticResource Tiles_Image}" Source="{Binding Image}" />
                                    </Grid>
                                </ListBoxItem>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>

1 个答案:

答案 0 :(得分:1)

如果您通过URL引用绑定中的图像(Source = {Binding Image}),请尝试使用PhonePerformance中的LowProfileImageLoader(http://nuget.org/packages/PhonePerformance)