InvalidEnumArgumentException-Klasse
Aktualisiert: November 2007
Die bei Verwendung ungültiger Enumeratorargumente ausgelöste Ausnahme.
Assembly: System (in System.dll)
[SerializableAttribute] [HostProtectionAttribute(SecurityAction.LinkDemand, SharedState = true)] public class InvalidEnumArgumentException : ArgumentException
/** @attribute SerializableAttribute */ /** @attribute HostProtectionAttribute(SecurityAction.LinkDemand, SharedState = true) */ public class InvalidEnumArgumentException extends ArgumentException
public class InvalidEnumArgumentException extends ArgumentException
Hinweis: |
|---|
Das auf diesen Typ oder Member angewendete HostProtectionAttribute-Attribut besitzt den folgenden Resources-Eigenschaftenwert: SharedState. Das HostProtectionAttribute hat keine Auswirkungen auf Desktopanwendungen (die normalerweise durch Doppelklicken auf ein Symbol, Eingeben eines Befehls oder einer URL in einem Browser gestartet werden). Weitere Informationen finden Sie unter der HostProtectionAttribute-Klasse oder unter SQL Server-Programmierung und Hostschutzattribute. |
Diese Ausnahme wird ausgelöst, wenn Sie einen ungültigen Enumerationswert an eine Methode oder beim Festlegen einer Eigenschaft übergeben.
Im folgenden Codebeispiel wird veranschaulicht, wie eine InvalidEnumArgumentException-Ausnahme abgefangen und deren Inhalt interpretiert wird. Im Beispiel wird versucht, einen ungültigen Enumerationswert (MessageBoxButtons) durch Umwandlung als drittes Argument der MessageBox.Show-Methode zu übergeben. Beim Abfangen der Ausnahme wird im Beispiel die entsprechende Fehlermeldung, der ungültige Parameter, die Stapelüberwachung und der Ursprung der Ausnahme abgerufen.
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
MessageBoxButtons myButton = (MessageBoxButtons)123;
MessageBox.Show("This is a message",
"This is the Caption", myButton);
}
catch (InvalidEnumArgumentException invE) {
Console.WriteLine(invE.get_Message());
Console.WriteLine(invE.get_ParamName());
Console.WriteLine(invE.get_StackTrace());
Console.WriteLine(invE.get_Source());
}
System.Exception
System.SystemException
System.ArgumentException
System.ComponentModel.InvalidEnumArgumentException
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Hinweis: