C# WPF应用程序有时(随机)在打印时选择错误的值

C# WPF应用程序有时(随机)在打印时选择错误的值,c#,wpf,memory-leaks,C#,Wpf,Memory Leaks,我不知道该怎么说。实际上,代码是正确的。99%的情况下,打印输出显示正确的值,但有时会打印其他值。如果我再次尝试打印同一页,将恢复正确的值 这可能是什么原因,以及如何确定此错误的原因。因为每当我尝试在我的开发PC上的VS中运行应用程序时,一切似乎都是正确的。不仅在WPF中,而且在windows或web应用程序中,其他人也可能发生这种情况 编辑 在做了大约50个测试条目之后,我有一次能够产生错误,我发现了以下值得注意的事情:(我不是在写代码,而是在尝试一般性地解释) 实际代码 VatOnAmoun

我不知道该怎么说。实际上,代码是正确的。99%的情况下,打印输出显示正确的值,但有时会打印其他值。如果我再次尝试打印同一页,将恢复正确的值

这可能是什么原因,以及如何确定此错误的原因。因为每当我尝试在我的开发PC上的VS中运行应用程序时,一切似乎都是正确的。不仅在WPF中,而且在windows或web应用程序中,其他人也可能发生这种情况

编辑

在做了大约50个测试条目之后,我有一次能够产生错误,我发现了以下值得注意的事情:(我不是在写代码,而是在尝试一般性地解释)

实际代码

VatOnAmount = ((decimal)record.Element("Amount") + 
                 (decimal)record.Element("Invoice").Element("CommissionAmount")) 

听起来您遇到了一个问题,即在调用属性获取值时,数据绑定/元素值可能无法更新。您可能希望在代码中放入一些跟踪语句,以输出要查看的值。另外-如果通过调试器单步执行,是否会遇到相同的问题?有时,这会改变比赛条件问题,比如这样

我更欣赏反对票而不是赞成票,因为他们让你觉得你的问题不是真实的、模糊的或没有意义。但是,我讨厌有人这样做而没有任何解释。特别是当SO允许在一个问题下发表评论/事后请清楚地解释你的问题时,我不明白。顺便说一句,我不是投你反对票的人:)我已经编辑了这个问题,但如果这仍然无法理解,我可能会用更多的代码和解释来打开新问题。你说的打印(打印机、控制台等)是什么意思?打印机A4大小…实际上我正在读取XML文件,然后将datacontext传递到另一个.xaml页面,然后调用该页面上的打印
VatOnAmount = ((decimal)record.Element("Amount") + 
                 (decimal)record.Element("Invoice").Element("CommissionAmount"))