SvgImageSource.OpenFailed 事件

定义

当出现与 SVG 检索或格式关联的错误时发生。

// Register
event_token OpenFailed(TypedEventHandler<SvgImageSource, SvgImageSourceFailedEventArgs const&> const& handler) const;

// Revoke with event_token
void OpenFailed(event_token const* cookie) const;

// Revoke with event_revoker
SvgImageSource::OpenFailed_revoker OpenFailed(auto_revoke_t, TypedEventHandler<SvgImageSource, SvgImageSourceFailedEventArgs const&> const& handler) const;
public event TypedEventHandler<SvgImageSource,SvgImageSourceFailedEventArgs> OpenFailed;
function onOpenFailed(eventArgs) { /* Your code */ }
svgImageSource.addEventListener("openfailed", onOpenFailed);
svgImageSource.removeEventListener("openfailed", onOpenFailed);
- or -
svgImageSource.onopenfailed = onOpenFailed;
Public Custom Event OpenFailed As TypedEventHandler(Of SvgImageSource, SvgImageSourceFailedEventArgs) 
<SvgImageSource OpenFailed="eventhandler"/>

事件类型

注解

可以使用 OpenFailed 事件通过检查 SvgImageSourceFailedEventArgs 来确定 SVG 未正确加载的原因,该事件包含 Status 属性中的错误信息。 处理 OpenFailed 的一种方案是将 UriSource 设置为可用作回退值的其他本地 SVG 源文件。 例如,如果尝试显示外部图像,其中源可能不再存在、用户没有 Internet 连接,或者 SVG 源的格式不正确,则可以将 UriSource 设置为引用作为应用包一部分且始终保证可用的本地回退或占位符 SVG。

private void SvgImageSource_OpenFailed(SvgImageSource sender, SvgImageSourceFailedEventArgs args) {
    if(args.Status != SvgImageSourceLoadStatus.Success) {
        sender.UriSource = new Uri("ms-appx:///Assets/fallback.svg");
    }
}

适用于