InvalidEnumArgumentException 類別
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
使用無效列舉值時所擲回的例外狀況。
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 例外狀況並解譯其內容。 此範例會嘗試傳遞無效的列舉值, 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
如果您將無效的列舉值傳遞至方法,或在設定屬性時,就會擲回這個例外狀況。
Invalid |
不使用訊息來初始化 InvalidEnumArgumentException 類別的新執行個體。 |
Invalid |
已淘汰.
使用指定的序列化資料和內容,初始化 InvalidEnumArgumentException 類別的新執行個體。 |
Invalid |
使用指定的訊息初始化 InvalidEnumArgumentException 類別的新執行個體。 |
Invalid |
使用指定的詳細描述和指定的例外狀況,初始化 InvalidEnumArgumentException 類別的新執行個體。 |
Invalid |
使用引數、無效值和列舉型別 (Enumeration) 類別所產生的訊息來初始化 InvalidEnumArgumentException 類別的新執行個體。 |
Data |
取得鍵值組的集合,這些鍵值組會提供關於例外狀況的其他使用者定義資訊。 (繼承來源 Exception) |
Help |
取得或設定與這個例外狀況相關聯的說明檔連結。 (繼承來源 Exception) |
HResult |
取得或設定 HRESULT,它是指派給特定例外狀況的編碼數值。 (繼承來源 Exception) |
Inner |
取得造成目前例外狀況的 Exception 執行個體。 (繼承來源 Exception) |
Message |
取得錯誤訊息和參數名稱,在參數名稱未設定時只會取得錯誤訊息。 (繼承來源 ArgumentException) |
Param |
取得造成這個例外狀況的參數名稱。 (繼承來源 ArgumentException) |
Source |
取得或設定造成錯誤的應用程式或物件的名稱。 (繼承來源 Exception) |
Stack |
取得呼叫堆疊上即時運算框架的字串表示。 (繼承來源 Exception) |
Target |
取得擲回目前例外狀況的方法。 (繼承來源 Exception) |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
Get |
在衍生類別中覆寫時,傳回一或多個後續的例外狀況的根本原因 Exception。 (繼承來源 Exception) |
Get |
做為預設雜湊函式。 (繼承來源 Object) |
Get |
已淘汰.
設定具有參數名稱和額外例外狀況資訊的 SerializationInfo 物件。 (繼承來源 ArgumentException) |
Get |
取得目前執行個體的執行階段類型。 (繼承來源 Exception) |
Memberwise |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
To |
建立並傳回目前例外狀況的字串表示。 (繼承來源 Exception) |
Serialize |
已淘汰.
當例外狀況序列化,以建立包含例外狀況相關序列化資料的例外狀況狀態物件時,就會發生此事件。 (繼承來源 Exception) |
產品 | 版本 |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |