2012-05-07 5 views
1

У меня есть список элементов в списке. Когда выбранный элемент изменяется, отображаются его детали: Я устанавливаю DataContextGrid этому объекту и вставляю конкретный UserControl, который отображает детали. Я получаю FatalExecutionEngineError на InitializeComponent() этих элементов управления пользователя.FatalExecutionEngineError на InitializeComponent при использовании IValueConverter

The runtime has encountered a fatal error. The address of the error was at 0x6d8c104e, on thread 0xcf4. The error code is 0xc0000005. This error may be a bug in the CLR or in the unsafe or non-verifiable portions of user code. Common sources of this bug include user marshaling errors for COM-interop or PInvoke, which may corrupt the stack. 

Ошибка удаляется, когда я удаляю привязки, использующие Value Converts. Некоторые конвертеры, похоже, не вызывают исключения ... Также ошибка появляется только тогда, когда я создаю новые экземпляры элементов управления пользователя для каждого элемента, который будет отображаться, но не при повторном использовании тех же элементов управления пользователя, которые создаются при запуске приложения, вверх. Есть ли какие-либо проблемы с IValueConverter? Если это так, я не буду использовать их в своем приложении? Где я могу найти список ошибок для пользовательского предварительного просмотра, поэтому я не трачу свое время на поиск обходных ошибок, которые будут исправлены в последующих выпусках?

+0

«FatalExecutionEngineError» должно почти никогда не происходить. Среда CLR разбилась. Можете ли вы опубликовать небольшой воспроизводимый пример? – vcsjones

+1

Вы используете бета-версию VS и предварительную версию Windows. Таким образом, ваша программа, падающая на неприятные проблемы с коррупцией памяти, ожидается. Вы можете публиковать сообщения об ошибках на connect.microsoft.com –

+0

@vcsjones Я не знаю, как я мог бы разместить небольшой пример, приложение получает его информацию из службы wcf, размещенной на лазури, которая затем сохраняется локально, каждый элемент сортируется в и т. д. Я попробую опубликовать код и xaml в непосредственной близости от того, где будут выбрасываться исключения. –

ответ

1

Существует не список ошибок, но это вызвало много людей много часов, если не дни разочарования, как вы можете видеть здесь и на форумах Microsoft. Избегайте настраиваемых преобразователей, пока мы не получим новый выпуск в июне. Даже если вы думаете, что у вас есть рабочий конвертер, вы, вероятно, этого не сделаете, и ваше приложение все равно будет разбиваться в казалось бы случайные времена. Отстой, но вот что такое бета-версии, я полагаю.

1

Возможное обходное решение, которое, казалось, сделало их более стабильными для меня, заключалось в том, чтобы переместить ресурс конвертера() и предмет, который его использует (например, DataTemplate) из центрального ресурса ResourceDictionary в отдельный раздел ресурсов страницы. Процессор

+0

Благодарим вас за то, что осталось от моих волос. – Robaticus

0

Я положил все свои ресурсы в один общий проект. Именно это и вызвало эту проблему. Я скопировал ресурсы для каждого отдельного проекта и решил проблему.1

Большое спасибо за этот ответ. Я трачу на это 6 часов, пока я не наткнулся на этот пост.

+0

Пожалуйста, не добавляйте «спасибо» в качестве ответа. Когда у вас будет достаточно [репутации] (http://stackoverflow.com/privileges/vote-up), вы сможете проголосовать за вопросы и ответы, которые вы нашли полезными. –