0

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>
4

1 に答える 1

1

バインディング (Source={Binding Image}) 内の画像を URL で参照する場合は、PhonePerformance (http://nuget.org/packages/PhonePerformance) の LowProfileImageLoader を使用してみてください。

于 2012-07-03T14:27:50.347 に答える