“如何修复”;捕获或抛出的类型必须从system.exception派生;C#中的wpf项目出错?
我正在尝试为用户输入创建一个验证策略。但我一直收到一个CS0155错误 我试图抛出一个异常,但它无法消除错误“如何修复”;捕获或抛出的类型必须从system.exception派生;C#中的wpf项目出错?,c#,wpf,validation,overflow,C#,Wpf,Validation,Overflow,我正在尝试为用户输入创建一个验证策略。但我一直收到一个CS0155错误 我试图抛出一个异常,但它无法消除错误 catch (OverflowAction) { Debug.WriteLine( "{0}.Validate: Int32 overflow (\"{1}\").", GetType(), str); stri
catch (OverflowAction)
{
Debug.WriteLine(
"{0}.Validate: Int32 overflow (\"{1}\").",
GetType(), str);
string errmsg = Properties.Resources.OverflowError;
return new ValidationResult(false, errmsg);
//throw new NotImplementedException();
}
我希望验证器捕获异常并返回错误消息。此错误表示您的
OverflowAction
类不是从异常继承的(或派生的)
请参阅错误文档
只有从System.Exception派生的数据类型才能传递到catch块中
OverflowAction
应该是
class OverflowAction : Exception
{
// ...
}
您可能会将OverflowAction
与…类EmptyOrInt32Rule:ValidationRule混淆,因为您可以看到我的类已经在使用ValidationRule。如何将异常添加到此中?这不是异常
类。只有异常
可以捕获
”ed.Yup。就这样。有史以来最愚蠢的错误。是的,谢谢