使用IValueConverter时,InitializeComponent上的FatalExecutionEngineError

时间:2012-05-07 14:11:01

标签: c# windows-runtime ivalueconverter winrt-xaml

我有一个列表框中的项目列表。当所选项目发生更改时,将显示其详细信息:我将DataContext的{​​{1}}设置为该对象,然后插入显示详细信息的特定UserControl。 我在这些用户控件的InitializeComponent()上得到Grid

FatalExecutionEngineError

当我删除使用Value Converts的绑定时,错误消失了。某些转换器似乎不会导致异常...此错误仅在我为要显示的每个项目创建用户控件的新实例时显示,而不是在重新使用在应用程序启动时创建的相同用户控件时起来。 IValueConverter有任何已知问题吗?如果是这样,我不应该在我的申请中使用它们?我在哪里可以找到Consumer Preview的错误列表,所以我不会浪费时间去寻找可以在以后的版本中修复的bug的解决方法?

4 个答案:

答案 0 :(得分:1)

没有一个错误列表,但是这个问题已经导致很多人花了很多时间,如果不是几天的挫折,你可以在这里和微软论坛上看到。在6月份发布新版本之前,请避免使用自定义转换器。即使你认为你有一个工作转换器,你可能没有,你的应用程序仍然会在看似随机的时间崩溃。很糟糕,但这就是我想的贝塔。

答案 1 :(得分:1)

似乎使这些更稳定的可能解决方法是将转换器资源()和使用它的东西(例如DataTemplate)从中央应用程序范围的ResourceDictionary移动到单个页面的资源部分。

答案 2 :(得分:0)

将属性中的处理器从86x更改为64x

答案 3 :(得分:0)

我把所有资源都放在一个共同的项目中。这就是导致我这个问题的原因。我将资源复制到每个单独的项目并解决了问题.1

非常感谢这个答案。我已经花了6个小时,直到我偶然发现这个帖子。!!!哇哇。