Debug XAML Designer in Visual Studio 2015

In Visual Studio 2015 wird der XAML Designer jeder .XAML-Datei in seinem eigenen Prozess ausgeführt, wobei jeder den gleichen Namen XDesProc.exe tragen. Manchmal erscheint nur eine weiße Box oder eine Exception flackert kurz auf, aber zum Debuggen reicht das alles nicht. Eine zweite Visual Studio Instanz muss zum Debuggen hinzugezogen werden.

  • Alle „XDesProc.exe“ Prozesse im Task Manager beenden.
  • Zwei Visual Studio (genannt ‚VS A‘ und ‚ VS B‘) Instanzen starten.
  • VS A wird später den Designer ausführen. VS B wird dessen Exceptions abfangen bzw. die Ausführung durch die Breakpoints stoppen lassen.
  • In VS B mit Debug -> Window -> ‚Exception Setting‘ am besten alle Exceptions anhaken, damit keine durchschlüpfen kann. Oder man setzt in VS B entsprechende Breakpoints in die MainWindow.xaml.cs, um die Ausführung dann dort zu stoppen.
  • In VS B Debug -> ‚Attach to Process‘ klicken. Dann auf die Process-Spalte klicken, um rückwärts alphabetisch zu sortieren:

visual studio debug xaml viewer

Folgende zwei Schritte müssen möglichst schnell nacheinander ausgeführt werden:

  • In VS A auf das MainWindows.xaml doppelklicken
  • In VS B „Refresh“ drücken und auf den „XDesProc.exe“ attachen BEVOR die Exception in VS A geworfen wird / bzw. die Anwendung am Breakpoint angekommen ist.

Dank an meinen Kollegen Hendrik.