C# 转换器是否应该抛出任何类型的异常?

C# 转换器是否应该抛出任何类型的异常?,c#,wpf,C#,Wpf,今天我遇到了一个bug,应用程序开始抛出多个异常(多个messagebox)。应用程序使用DispatcherUnhandledException 在调查过程中,我发现,如果转换器的参数为NULL,则用于在dataGrid中格式化日期和时间的转换器会抛出FormatException 建议在任何情况下从转换器引发异常吗?,否: 数据绑定引擎不会捕获由 用户提供的转换器。转换程序引发的任何异常 方法引发的任何未捕获异常 转换方法调用将被视为运行时错误。手柄 通过返回DependencyProper

今天我遇到了一个bug,应用程序开始抛出多个异常(多个messagebox)。应用程序使用DispatcherUnhandledException

在调查过程中,我发现,如果转换器的参数为NULL,则用于在dataGrid中格式化日期和时间的转换器会抛出FormatException

建议在任何情况下从转换器引发异常吗?

,否:

数据绑定引擎不会捕获由 用户提供的转换器。转换程序引发的任何异常 方法引发的任何未捕获异常 转换方法调用将被视为运行时错误。手柄 通过返回DependencyProperty.UnsetValue可以预料到问题

也就是说,我个人在
Convert
ConvertBack
方法不受支持时使用
NotSupportedException