Sprache: C#
Dieses Snippet demonstriert den Download eines Bildes von einer Webresource. Der Code ist als selbstständige Methode verpackt um den Download mehrerer Bilder zu vereinfachen.
[b]Benötigte Namespaces[/b]
System
System.Threading.Tasks
Windows.Storage.Streams
Windows.UI.Xaml
Windows.UI.Xaml.Media.Imaging
/// <summary>
/// Lädt ein Bild asynchron von dem Pfad mit dem angegebenen URI herunter.
/// </summary>
/// <param name="uri">Der Downloadpfad des Bildes.</param>
/// <param name="imageOpened">Ein Eventhandler, welcher aufgerufen wird, wenn das Bild fertig herunter geladen wurde. Dieser Parameter darf <c>null</c> sein.</param>
/// <returns>Eine Aufgabe die das herunter geladene Bild zurück gibt.</returns>
static async Task<BitmapImage> DownloadImageAsync(Uri uri, RoutedEventHandler imageOpened)
{
RandomAccessStreamReference stream = RandomAccessStreamReference.CreateFromUri(uri);
using (IRandomAccessStream randomStream = await stream.OpenReadAsync())
{
BitmapImage bmp = new BitmapImage();
bmp.ImageOpened += imageOpened;
await bmp.SetSourceAsync(randomStream);
return bmp;
}
}
/// <summary>
/// Lädt ein Bild asynchron von dem Pfad mit dem angegebenen URI herunter.
/// </summary>
/// <param name="uri">Der Downloadpfad des Bildes.</param>
/// <param name="imageOpened">Ein Eventhandler, welcher aufgerufen wird, wenn das Bild fertig herunter geladen wurde. Dieser Parameter darf <c>null</c> sein.</param>
/// <returns>Eine Aufgabe die das herunter geladene Bild zurück gibt.</returns>
static async Task<BitmapImage> DownloadImageAsync(Uri uri, RoutedEventHandler imageOpened)
{
RandomAccessStreamReference stream = RandomAccessStreamReference.CreateFromUri(uri);
using (IRandomAccessStream randomStream = await stream.OpenReadAsync())
{
BitmapImage bmp = new BitmapImage();
bmp.ImageOpened += imageOpened;
await bmp.SetSourceAsync(randomStream);
return bmp;
}
}
Alte URL:
/snippet/windows-store-app-bild-herunter-laden/4879