InvalidEnumArgumentException 类

定义

使用无效枚举值时引发的异常。

public ref class InvalidEnumArgumentException : ArgumentException
public class InvalidEnumArgumentException : ArgumentException
[System.Serializable]
public class InvalidEnumArgumentException : ArgumentException
type InvalidEnumArgumentException = class
    inherit ArgumentException
[<System.Serializable>]
type InvalidEnumArgumentException = class
    inherit ArgumentException
Public Class InvalidEnumArgumentException
Inherits ArgumentException
继承
InvalidEnumArgumentException
属性

示例

下面的代码示例演示如何捕获 InvalidEnumArgumentException 异常并解释其内容。 该示例尝试通过强制转换传递无效的枚举值(MessageBoxButtons)作为 MessageBox.Show 方法的第三个参数。 捕获异常后,该示例将提取相应的错误消息、无效参数、堆栈跟踪和异常的来源。

try
{
   //Attempting to pass an invalid enum value (MessageBoxButtons) to the Show method
   MessageBoxButtons myButton = (MessageBoxButtons)123; // to fix use System::Windows::Forms::DialogResult::OK;

   MessageBox::Show( this,  "This is a message",  "This is the Caption", myButton );
}
catch ( InvalidEnumArgumentException^ invE ) 
{
   Console::WriteLine( invE->Message );
   Console::WriteLine( invE->ParamName );
   Console::WriteLine( invE->StackTrace );
   Console::WriteLine( invE->Source );
}
try
{
    // Attempts to pass an invalid enum value (MessageBoxButtons) to the Show method
    MessageBoxButtons myButton = (MessageBoxButtons)123;
    MessageBox.Show("This is a message", "This is the Caption", myButton);
}
catch (InvalidEnumArgumentException invE)
{
    Console.WriteLine(invE.Message);
    Console.WriteLine(invE.ParamName);
    Console.WriteLine(invE.StackTrace);
    Console.WriteLine(invE.Source);
}
Try
    ' Attempts to pass an invalid enum value (MessageBoxButtons) to the Show method
    Dim myButton As MessageBoxButtons
    myButton = CType(123, MessageBoxButtons)
    MessageBox.Show("This is a message", "This is the Caption", myButton)
Catch invE As System.ComponentModel.InvalidEnumArgumentException
    Console.WriteLine(invE.Message)
    Console.WriteLine(invE.ParamName)
    Console.WriteLine(invE.StackTrace)
    Console.WriteLine(invE.Source)
End Try

注解

如果将无效的枚举值传递给方法或在设置属性时,将引发此异常。

构造函数

名称 说明
InvalidEnumArgumentException()

在没有消息的情况下初始化类的新实例 InvalidEnumArgumentException

InvalidEnumArgumentException(SerializationInfo, StreamingContext)

使用指定的序列化数据和上下文初始化类的新实例 InvalidEnumArgumentException

InvalidEnumArgumentException(String, Exception)

使用指定的详细说明和指定的异常初始化类的新实例 InvalidEnumArgumentException

InvalidEnumArgumentException(String, Int32, Type)

使用从参数、无效值和枚举类生成的消息初始化类的新实例 InvalidEnumArgumentException

InvalidEnumArgumentException(String)

使用指定的消息初始化类的新实例 InvalidEnumArgumentException

属性

名称 说明
Data

获取键/值对的集合,这些键/值对提供有关异常的其他用户定义的信息。

(继承自 Exception)
HelpLink

获取或设置与此异常关联的帮助文件的链接。

(继承自 Exception)
HResult

获取或设置 HRESULT,它是分配给特定异常的编码数值。

(继承自 Exception)
InnerException

Exception获取导致当前异常的实例。

(继承自 Exception)
Message

获取错误消息和参数名称,或者仅当未设置任何参数名称时出现错误消息。

(继承自 ArgumentException)
ParamName

获取导致此异常的参数的名称。

(继承自 ArgumentException)
Source

获取或设置导致错误的应用程序或对象的名称。

(继承自 Exception)
StackTrace

获取调用堆栈上即时帧的字符串表示形式。

(继承自 Exception)
TargetSite

获取引发当前异常的方法。

(继承自 Exception)

方法

名称 说明
Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
GetBaseException()

在派生类中重写时,返回 Exception 一个或多个后续异常的根本原因。

(继承自 Exception)
GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetObjectData(SerializationInfo, StreamingContext)

SerializationInfo使用参数名称和附加异常信息设置对象。

(继承自 ArgumentException)
GetType()

获取当前实例的运行时类型。

(继承自 Exception)
MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
ToString()

创建并返回当前异常的字符串表示形式。

(继承自 Exception)

活动

名称 说明
SerializeObjectState

序列化异常以创建包含有关异常的序列化数据的异常状态对象时发生。

(继承自 Exception)

适用于