转换器应该抛出任何exception吗?

今天我遇到了一个错误,应用程序开始抛出多个exception(多个消息框)。 该应用程序使用DispatcherUnhandledException。

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

在任何情况下都建议从转换器中抛出exception吗?

根据MSDN ,没有:

数据绑定引擎不会捕获用户提供的转换器抛出的exception。 Convert方法抛出的任何exception,或Convert方法调用的方法抛出的任何未捕获的exception都被视为运行时错误。 通过返回DependencyProperty.UnsetValue处理预期的问题。

话虽这么说,但是当不支持ConvertConvertBack方法时,我个人使用NotSupportedException