WPF-приложение на основе .NET Framework 4.0 аварийно завершает работу, если объект источника привязки данных в элемент управления является элементом, который определен за пределами пространства имен элемента управления

Переводы статьи Переводы статьи
Код статьи: 2461678 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Проблема

Рассмотрим следующий сценарий:
  • У вас есть Microsoft приложения платформа.NET Framework 4.0 на Windows Presentation Foundation (WPF).
  • Объект источника привязки данных в элементе управления приложения WPF является элементом, который определен за пределами пространство имен элемента управления.
  • Некоторые операции с помощью пользовательского интерфейса приложения WPF. После выполнения этих операций целевого объекта привязки удаляется из визуального дерева и мусора, восстанавливает целевой элемент. Это происходит до инициации следующей передачи макета в приложении.
В этом случае возникает исключение ArgumentNullException и сбоям приложения WPF. При отладке приложения отображается стек вызовов, описанный в разделе "Дополнительная информация", а также следующее сообщение об ошибке:
Значение не может быть пустым

Причина

Эта проблема возникает из-за пустого аргумента возвращается приложением WPF, когда он выполняет повторное вычисление привязки данных в элементе управления.

Решение

Сведения об исправлении

Доступно исправление от корпорации Майкрософт. Тем не менее оно предназначено для устранения проблемы, описанной в этой статье. Предлагаемое исправление должно применяться исключительно в системах, в которых обнаружена эта специфическая неполадка. Это исправление может проходить дополнительное тестирование. Таким образом если вы не наблюдаете эту проблему, рекомендуется отложить ее решение до выхода ближайшего пакета обновления, содержащего это исправление.

Чтобы решить проблему немедленно, обратитесь в службу поддержки пользователей Майкрософт для получения исправления. Полный список телефонов служб поддержки клиентов корпорации Майкрософт и сведения о стоимости поддержки посетите следующий веб-узел корпорации Майкрософт:
http://support.Microsoft.com/contactus/?ws=support
Примечание В особых случаях расходов, предусмотренная для звонков в службу поддержки может быть отменена, если специалистом службы поддержки Майкрософт определяет, что обновление будет решением проблемы. Дополнительные услуги по технической поддержке, не связанные с данным исправлением, оплачиваются на стандартных условиях.

Примечание Это исправление можно загрузить на следующем сайте Microsoft Connect:
http://Connect.Microsoft.com/VisualStudio/downloads/DownloadDetails.aspx?DownloadID=33315

Необходимые условия

Данное исправление необходимо иметь 4.0 платформа.NET Framework установлена.

Необходимость перезагрузки

Необходимо перезагрузить компьютер после установки исправления, если файлы не используются.

Сведения о замене исправлений

Это исправление не заменяет других исправлений.

Сведения о файле

Английская версия данного исправления содержит атрибуты файла (или более поздними), приведенные в следующей таблице. Дата и время для этих файлов указаны в UTC. При просмотре сведений о файле, оно преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, следует использовать Часовой пояс на вкладке Дата и время элемент панели управления.
Для всех поддерживаемых 32-разрядных версий Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 и Windows Server 2008 R2
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформы
PresentationFramework.dll4.0.30319.3956,347,11224-Ноя-201008: 21x86
Для всех поддерживаемых 64-разрядных версий Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 и Windows Server 2008 R2
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформы
PresentationFramework.dll4.0.30319.3956,347,11224-Ноя-201008: 21x64

Статус

Корпорация Майкрософт подтверждает, что это является проблемой в продуктах Майкрософт, перечисленных в разделе «Относится к».

Дополнительная информация

Сведения о стеке вызова
at MS.Internal.Data.ElementObjectRef.GetObject(DependencyObject d, ObjectRefArgs args)
at MS.Internal.Data.ObjectRef.GetDataObject(DependencyObject d, ObjectRefArgs args)
at System.Windows.Data.BindingExpression.MS.Internal.Data.IDataBindEngineClient.VerifySourceReference(Boolean lastChance)
at MS.Internal.Data.DataBindEngine.Task.Run(Boolean lastChance)
at MS.Internal.Data.DataBindEngine.Run(Object arg)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
at System.Threading.ExecutionContext.runTryCode(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

Свойства

Код статьи: 2461678 - Последний отзыв: 16 января 2013 г. - Revision: 7.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft .NET Framework 4.0
Ключевые слова: 
kbqfe kbfix kbHotfixServer kbexpertiseadvanced kbsurveynew atdownload kbmt KB2461678 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке: 2461678

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com