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

備註

若你將無效列舉值傳給方法或設定屬性時,會拋出此例外。

建構函式

名稱 Description
InvalidEnumArgumentException()

初始化類別的新實例 InvalidEnumArgumentException ,且不發送訊息。

InvalidEnumArgumentException(SerializationInfo, StreamingContext)
已淘汰.

利用指定的序列化資料與上下文初始化該類別的新 InvalidEnumArgumentException 實例。

InvalidEnumArgumentException(String, Exception)

初始化一個帶有指定詳細描述與例外的新類別實例 InvalidEnumArgumentException

InvalidEnumArgumentException(String, Int32, Type)

初始化一個新的類別實例 InvalidEnumArgumentException ,包含由參數、無效值及枚舉類別產生的訊息。

InvalidEnumArgumentException(String)

初始化一個新的類別實例 InvalidEnumArgumentException ,並以指定訊息進行。

屬性

名稱 Description
Data

取得一組鍵值對,提供關於例外的額外使用者定義資訊。

(繼承來源 Exception)
HelpLink

取得或設定與此例外相關的說明檔案連結。

(繼承來源 Exception)
HResult

取得或設定 HRESULT,一個編碼的數值,指派給特定例外。

(繼承來源 Exception)
InnerException

會取得 Exception 造成目前例外的實例。

(繼承來源 Exception)
Message

會收到錯誤訊息和參數名稱,或者如果沒有設定參數名稱,則只會收到錯誤訊息。

(繼承來源 ArgumentException)
ParamName

取得導致此例外的參數名稱。

(繼承來源 ArgumentException)
Source

取得或設定造成錯誤之應用程式或物件的名稱。

(繼承來源 Exception)
StackTrace

會取得呼叫堆疊上即時框架的字串表示。

(繼承來源 Exception)
TargetSite

會取得拋出當前例外的方法。

(繼承來源 Exception)

方法

名稱 Description
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetBaseException()

當在派生類別中被覆寫時,回傳 Exception 是一個或多個後續例外的根因。

(繼承來源 Exception)
GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetObjectData(SerializationInfo, StreamingContext)
已淘汰.

以參數名稱及額外例外資訊設定物件。SerializationInfo

(繼承來源 ArgumentException)
GetType()

取得目前實例的執行時型態。

(繼承來源 Exception)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

建立並回傳當前例外的字串表示。

(繼承來源 Exception)

事件

名稱 Description
SerializeObjectState
已淘汰.

當例外被序列化以建立包含該例外序列化資料的例外狀態物件時,會發生這種情況。

(繼承來源 Exception)

適用於