今天我遇到一个错误,应用程序开始抛出多个异常(多个消息框)。应用程序使用 DispatcherUnhandledException。
在调查过程中,我发现如果转换器的参数为 NULL,则用于格式化 dataGrid 中的日期和时间的转换器会抛出 FormatException。
在任何情况下都建议从转换器抛出异常吗?
根据 MSDN http://msdn.microsoft.com/en-us/library/system.windows.data.ivalueconverter.convert.aspx, no:
数据绑定引擎不会捕获由
用户提供的转换器。 Convert 引发的任何异常
方法,或由该方法抛出的任何未捕获的异常
转换方法调用,被视为运行时错误。处理
通过返回 DependencyProperty.UnsetValue 来解决预期的问题。
话虽这么说,我个人使用NotSupportedException
当Convert
or ConvertBack
不支持该方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)