绑定和转换器错误有多糟糕。我应该以某种方式处理它们吗?

时间:2012-01-13 18:56:30

标签: c# silverlight xaml binding

我有这样的错误,因为我的控件是自我绑定的。据我所知,它没有伤害任何东西,但我想知道我是否应该担心这个?

  

System.Windows.Data错误:BindingExpression路径错误:   找不到'CanNavigateLast'属性   'Infrastructure.Controls.Lookup.LookupViewModel'   'Infrastructure.Controls.Lookup.LookupViewModel'(HashCode = 21405046)。   BindingExpression:Path ='CanNavigateLast'   的DataItem = 'Infrastructure.Controls.Lookup.LookupViewModel'   (的HashCode = 21405046);目标元素是   'Infrastructure.Controls.DitatToolbar'(Name ='');目标属性是   'CanNavigateLast'(输入'System.Boolean')..

或者这个。我知道它是空的并且它似乎没有引起任何问题,但我想知道这是否是一个问题?

  

System.Windows.Data错误:'MS.Internal.Data.DynamicValueConverter'   转换器无法转换值'null'(类型'null');   BindingExpression:Path ='FilterFrom'   的DataItem = 'Infrastructure.Controls.Lookup.FilterBoxRow'   (的HashCode = 57480441);目标元素是   'System.Windows.Controls.NumericUpDown'(Name ='');目标属性是   'Value'(类型'System.Double').. System.InvalidOperationException:   无法将null类型转换为System.Double类型。在   MS.Internal.Data.DynamicValueConverter.Convert(Object value,Type   targetType,Object parameter,CultureInfo culture)at   System.Windows.Data.BindingExpression.ConvertToTarget(Object value)。

1 个答案:

答案 0 :(得分:2)

理想情况下,您不应该有这样的错误

<强>但是

没有什么可担心这类错误。无效的绑定不会以任何方式受到伤害,因为它们不会被视为异常(这会导致巨大的性能损失)。不存在任何性能问题或类似的问题

虽然您可以通过trace listener看到失败的绑定,就像您在visual studio的输出窗口中看到它们一样,但在正常的应用程序中,因为没有跟踪侦听器,因此不会对绑定失败产生任何影响。