ExceptionRoutedEventArgs 类

定义

为异步操作(如 ImageFailed)引发的异常提供事件数据。

public ref class ExceptionRoutedEventArgs : RoutedEventArgs
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ExceptionRoutedEventArgs : RoutedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class ExceptionRoutedEventArgs : RoutedEventArgs
Public Class ExceptionRoutedEventArgs
Inherits RoutedEventArgs
继承
Object Platform::Object IInspectable RoutedEventArgs ExceptionRoutedEventArgs
派生
属性

示例

此示例演示如何在处理程序中使用 ExceptionRoutedEventArgs 来获取 HResult 和 错误消息。

private void videoMediaElement_MediaFailed(object sender, ExceptionRoutedEventArgs e)
{
    // get HRESULT from event args 
    string hr = GetHresultFromErrorMessage(e);

    // Handle media failed event appropriately 
}

private string GetHresultFromErrorMessage(ExceptionRoutedEventArgs e)
{
    String hr = String.Empty;
    String token = "HRESULT - ";
    const int hrLength = 10;     // eg "0xFFFFFFFF"

    int tokenPos = e.ErrorMessage.IndexOf(token, StringComparison.Ordinal);
    if (tokenPos != -1)
    {
        hr = e.ErrorMessage.Substring(tokenPos + token.Length, hrLength);
    }

    return hr;
}

注解

不要向最终用户显示 ErrorMessage 字符串。 请改用字符串中的子字符串和代码来肯定地识别错误条件,并让应用采取适当的操作或在应用 UI 中显示适合用户的信息。

ExceptionRoutedEventArgs 是使用 ExceptionRoutedEventHandler 委托的多个事件的事件数据。 其中包括:

ExceptionRoutedEventArgs 派生类

ExceptionRoutedEventArgs 是 MediaFailedRoutedEventArgs 的父类。

属性

ErrorMessage

以字符串形式获取异常的消息组件。

OriginalSource

获取对引发事件的 对象的引用。 这通常是控件的模板部分,而不是在应用 UI 中声明的元素。

(继承自 RoutedEventArgs)

适用于

另请参阅