当我在WPF中收到绑定错误时,会出现一个错误代码。
例如,
System.Windows.Data 错误:40 :BindingExpression路径错误: 'object'''ProductModel'上找不到'产品'属性 (的HashCode = 57788087)”。 BindingExpression:路径=产品; DataItem ='ProductModel'(HashCode = 57788087);目标元素是 'TextBox'(Name =''); target属性是'Text'(类型'String')
或
System.Windows.Data 错误:4 :无法找到绑定源 参考'RelativeSource FindAncestor, AncestorType = 'System.Windows.Controls.ItemsControl', AncestorLevel = '1'”。 BindingExpression:路径= HorizontalContentAlignment; 的DataItem = NULL; target元素是'MenuItem'(Name ='');目标财产 是'HorizontalContentAlignment'(类型'HorizontalAlignment')
这些错误代码代表什么,我在哪里可以找到它们的列表?
答案 0 :(得分:7)
我认为您不会在任何地方找到官方来源或文档,这些似乎是PresentationFramework
程序集内部的消息和代码。
这可能不是找到所有可能错误的唯一地方,但是如果你有一个像.NET Reflector这样的工具或者有可用的源,你可以查看MS.Internal.TraceData
类,你会找到你的错误消息和代码。
例如,TraceData.ClrReplaceItem()
对应错误40
,TraceData.NoSource()
对应错误4
。
TraceData
类确实出现在reference source中,但它注意到生成了其余的方法(我们感兴趣的方法)。列出的文件AvTraceMessage.txt
和genTraceStrings.pl
似乎未包含在内。因此,在我们访问这些文件之前,您必须检查程序集。