6

当我在 WPF 中遇到绑定错误时,会出现一个错误代码。

例如,

System.Windows.Data错误:40:BindingExpression 路径错误:在“对象”“ProductModel”(HashCode=57788087)上找不到“Product”属性。绑定表达式:路径=产品;DataItem='ProductModel' (HashCode=57788087); 目标元素是'TextBox'(名称='');目标属性是“文本”(类型“字符串”)

或者

System.Windows.Data错误:4:找不到与引用“RelativeSource FindAncestor,AncestorType='System.Windows.Controls.ItemsControl',AncestorLevel='1''的绑定源。BindingExpression:Path=Horizo​​ntalContentAlignment; 数据项=空;目标元素是'MenuItem'(名称='');目标属性是“Horizo​​ntalContentAlignment”(类型“Horizo​​ntalAlignment”)

这些错误代码代表什么,在哪里可以找到它们的列表?

4

1 回答 1

8

我认为您不会在任何地方找到官方源文档,这些似乎是 WPF 程序集内部的消息和代码。

这不是找到所有可能错误的唯一地方,但如果您查看源代码,您可以查看MS.Internal.TraceData该类,您会在那里找到错误消息和代码。自从发布此答案以来,它似乎已被重构,但您可以在生成的AvTraceMessages.cs文件中找到这些。

例如,TraceData.ClrReplaceItem()对应于 error40TraceData.NoSource()对应于 error 4

幸运的是,我们现在可以访问用于生成这些消息的资源文件,您可以在此处找到。看起来错误代码可能对应于该文件中的索引。

于 2013-01-26T05:50:44.067 回答