2013-04-23 63 views
0

我使用大約40張聯機圖片填充GridView。我已經得到了我的網格一個DataTemplate其中Image.Source綁定到URL(如「http://foo.jpg」),像這樣:Windows應用商店 - 從網址加載圖片 - 性能較差

<Image Source="{Binding imgUrl}" > 

的問題是,這種方法是很慢的,因爲所有的圖像都過來先下載互聯網(圖片的實際尺寸可以是500x500,儘管在應用程序中我只需要大約250x200的尺寸)。這會導致在需要一些時間的GridView中彈出40個圖像。你怎麼能改善這個?

預先下載到本地存儲?縮放圖像? ...

回答

0

我覺得你自己幾乎可以回答這個問題。如果源URL很慢,你幾乎別無選擇,只能預先下載它們。除非你控制源代碼,那麼你就像你說的那樣,如果質量變好的話,肯定會縮放和/或轉換爲更多格式,而不會像gif那樣佔用太多空間。

0

如果預先下載了一些你可以使用的東西,也許看看使用WebClient'sDownloadDataAsync。當下載完成事件啓動時,您可以更新您的圖像集。

+0

不幸的是,Windows應用商店應用不支持WebClient。 – Johann 2013-04-23 13:45:27

+1

啊,好吧。我沒有意識到這一點。看起來像這樣[回覆](http://stackoverflow.com/a/9485128/609879)可能是WebClient的一個很好的解決方案, – Scott 2013-04-23 13:50:08