Nullverweisausnahme beim Ausführen einer .NET-App mit Benutzeroberflächenautomatisierung

Dieser Artikel hilft Ihnen, die Nullverweisausnahme zu beheben, die ausgelöst wird, wenn Sie eine .NET-Anwendung mit Benutzeroberflächenautomatisierung ausführen.

Ursprüngliche Produktversion:   Microsoft .NET Framework
Ursprüngliche KB-Nummer:   2653004

Problembeschreibung

Möglicherweise wird beim Ausführen einer Anwendung, die ein .NET-Kalendersteuerelement und ein beliebiges Benutzeroberflächenautomatisierungstool wie Inspect.exe enthält, eine Nullverweisausnahme ausgelöst. Die Anwendung stürzt möglicherweise ab, wenn der Fokus auf das Kalendersteuerelement fällt.

Ursache

Möglicherweise haben Sie ein feines Problem in Ihrer von der App definierten Vorlage, bei der die NULL-Werte in der AutomationPeer Sammlung stammten.

Die Ressourcen in einem Wörterbuch auf Designebene, auf die außerhalb verwiesen wird, müssen mithilfe eines Namens benannt ComponentResourceKey werden. In diesem Fall möchte UIAutomation (Inspect.exe) darauf verweisen DataTemplate und die Ausnahme auslösen.

Lösung

Legen Sie DataTamplate Key Folgendes fest:

<DataTemplate x:Key="{ComponentResourceKey TypeInTargetAssembly=CalendarItem, ResourceId=DayTitleTemplate}">

Statt:

<DataTemplate x:Key="DayTitleTemplate">