共用方式為


SvgImageSource.SetSourceAsync(IRandomAccessStream) 方法

定義

存取資料流程並以非同步方式處理結果,以設定 SvgImageSource 的來源 SVG。

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)

參數

streamSource
IRandomAccessStream

設定 SVG 來源值的資料流程來源。

傳回

SvgImageSourceLoadStatus值,指出作業是否成功。 如果失敗,表示失敗的原因。

屬性

範例

這裡顯示的這個範例會使用使用檔案選擇器取得的檔案資料流程 (,而不是透過呼叫 SetSourceAsync (IRandomAccessStream) 來載入影像來源) 。 檔案選擇器、資料流程和呼叫 SetSourceAsync (IRandomAccessStream) 都是非同步。

// 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;
}

備註

呼叫非同步 SetSourceAsync (IRandomAccessStream) 方法來設定 SVG 來源,可避免封鎖 UI 執行緒。 如需如何使用 asyncawait的詳細資訊,請參閱 在 C# 或 Visual Basic 中呼叫非同步 API。 如果應用程式透過 SetSourceAsync (IRandomAccessStream) 或 UriSource 再次變更 SVG 來源,而 SetSourceAsync (IRandomAccessStream) 呼叫正在進行中,擱置的 SetSourceAsync (IRandomAccessStream) 動作將會擲回 TaskCanceledException

適用於