Share via


SvgImageSource.SetSourceAsync(IRandomAccessStream) Méthode

Définition

Définit le SVG source d’un SvgImageSource en accédant à un flux et en traitant le résultat de manière asynchrone.

public:
 virtual IAsyncOperation<SvgImageSourceLoadStatus> ^ SetSourceAsync(IRandomAccessStream ^ streamSource) = SetSourceAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<SvgImageSourceLoadStatus> SetSourceAsync(IRandomAccessStream const& streamSource);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<SvgImageSourceLoadStatus> SetSourceAsync(IRandomAccessStream streamSource);
function setSourceAsync(streamSource)
Public Function SetSourceAsync (streamSource As IRandomAccessStream) As IAsyncOperation(Of SvgImageSourceLoadStatus)

Paramètres

streamSource
IRandomAccessStream

Source de flux qui définit la valeur de source SVG.

Retours

Valeur SvgImageSourceLoadStatus qui indique si l’opération a réussi. En cas d’échec, indique la raison de l’échec.

Attributs

Exemples

Cet exemple présenté ici utilise un flux de fichiers (obtenu à l’aide d’un sélecteur de fichiers, non affiché) pour charger une source d’image en appelant SetSourceAsync(IRandomAccessStream). Le sélecteur de fichiers, le flux et l’appel à SetSourceAsync(IRandomAccessStream) sont tous asynchrones.

// Ensure the stream is disposed once the SVG is loaded
using (IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read))
{
    // Set the SVG source to the selected file
    SvgImageSource svgImage = new SvgImageSource();

    await svgImage.SetSourceAsync(fileStream);
    Scenario2Image.Source = svgImage;
}

Remarques

La définition d’une source SVG en appelant la méthode asynchrone SetSourceAsync(IRandomAccessStream) évite de bloquer le thread d’interface utilisateur. Pour plus d’informations sur l’utilisation de async ou await, consultez Appeler des API asynchrones en C# ou Visual Basic. Si l’application modifie à nouveau la source SVG via SetSourceAsync(IRandomAccessStream) ou UriSource alors qu’un appel SetSourceAsync(IRandomAccessStream) est déjà en cours, l’action SetSourceAsync(IRandomAccessStream) en attente lève une exception TaskCanceledException.

S’applique à