2010-11-22 6 views
1

J'ai un contrôle d'image que je veux charger l'image de manière asynchrone sur le réseau. Je vois un exemple de code dans le réseau disant quelque chose comme:Image Control asynchrone

<Image HorizontalAlignment="Left" Height="118" Margin="2,8,0,0" VerticalAlignment="Top" Width="167" x:Name="ImageThumbnail" Source="{Binding SummaryImageLink, IsAsync=True}" />

Cependant, dans Windows Phone 7, je ne peux pas trouver quelque chose comme ça. Quelqu'un sait-il un moyen de le faire sans avoir moi-même beaucoup à coder?

Répondre

1

Malheureusement, vous devrez écrire ou inclure plus de code vous-même pour le faire correctement. J'ai une solution similaire dans le but de mettre en cache les images après le premier téléchargement. La classe de cache d'image est accessible par un IValueConverter, donc une fois que vous avez inclus le code approprié, il suffit d'ajouter un décorateur sur l'objet de l'image:

<Image Source="{Binding ElementName=ImageSource, Path=Text, Converter={StaticResource imageCacheConverter}}" Width="200" /> 

détails ici et le code source ici: http://www.ben.geek.nz/2010/07/one-time-cached-images-in-windows-phone-7/

0

Vous pouvez aussi télécharger l'image en mode asynchrone (par ex. Avec un BackgroundWorker) et l'affecter en tant que source pour votre contrôle d'image que lorsque le téléchargement est terminé.

+0

C'est une solution possible mais je dois écrire encore du code – vodkhang