SvgImageSource.SetSourceAsync(IRandomAccessStream) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define o SVG de origem para um SvgImageSource acessando um fluxo e processando o resultado de forma assíncrona.
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)
Parâmetros
- streamSource
- IRandomAccessStream
A origem do fluxo que define o valor de origem SVG.
Retornos
Um valor SvgImageSourceLoadStatus que indica se a operação foi bem-sucedida. Se falhou, indica o motivo da falha.
- Atributos
Exemplos
Este exemplo mostrado aqui usa um fluxo de arquivos (obtido usando um seletor de arquivos, não mostrado) para carregar uma fonte de imagem chamando SetSourceAsync(IRandomAccessStream). O seletor de arquivos, o fluxo e a chamada para SetSourceAsync(IRandomAccessStream) são todos assíncronos.
// 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;
}
Comentários
Definir uma origem SVG chamando o método assíncrono SetSourceAsync(IRandomAccessStream) evita bloquear o thread da interface do usuário. Para obter mais informações sobre como usar assíncrono ou aguardar, consulte Chamar APIs assíncronas em C# ou Visual Basic. Se o aplicativo alterar a origem do SVG novamente por meio de SetSourceAsync(IRandomAccessStream) ou UriSource enquanto uma chamada SetSourceAsync(IRandomAccessStream) já estiver em andamento, a ação pendente SetSourceAsync(IRandomAccessStream) lançará uma TaskCanceledException.