Debugowanie lub wyłączanie kodu projektu w projektancie XAML

W wielu przypadkach nieobsługiwane wyjątki w Projektant XAML mogą być spowodowane próbą uzyskania dostępu do właściwości lub metod, które zwracają różne wartości lub działają w inny sposób, gdy aplikacja działa w projektancie. Te wyjątki można rozwiązać, debugując kod projektu w innym wystąpieniu programu Visual Studio lub tymczasowo zapobiegając wyjątkom, wyłączając kod projektu w projektancie.

Kod projektu obejmuje:

  • Kontrolki niestandardowe i kontrolki użytkownika

  • Biblioteki klas

  • Konwertery wartości

  • Powiązania względem danych czasu projektowania wygenerowanego na podstawie kodu projektu

Gdy kod projektu jest wyłączony, program Visual Studio wyświetla symbole zastępcze. Na przykład program Visual Studio wyświetla nazwę właściwości powiązania, w którym dane nie są już dostępne, lub symbol zastępczy kontrolki, która nie jest już uruchomiona.

Unhandled exception dialog

Aby ustalić, czy kod projektu powoduje wyjątek

  1. W nieobsługiwanym oknie dialogowym wyjątku wybierz link Kliknij tutaj, aby ponownie załadować projektanta .

  2. Na pasku menu wybierz pozycję Debuguj>rozpocznij debugowanie, aby skompilować i uruchomić aplikację.

    Jeśli aplikacja zostanie skompilowany i uruchomiony pomyślnie, wyjątek czasu projektowania może być spowodowany przez kod projektu uruchomiony w projektancie.

Aby debugować kod projektu uruchomiony w projektancie

  1. W nieobsługiwanym oknie dialogowym wyjątku wybierz link Kliknij tutaj, aby wyłączyć uruchamianie kodu projektu i ponownie załadować projektanta .

  2. W Menedżerze zadań systemu Windows wybierz przycisk Zakończ zadanie, aby zamknąć wszystkie wystąpienia programu Visual Studio XAML Projektant, które są aktualnie uruchomione.

    XAML designer instances in TaskManager

  3. W programie Visual Studio otwórz stronę XAML zawierającą kod lub kontrolkę, którą chcesz debugować.

  4. Otwórz nowe wystąpienie programu Visual Studio, a następnie otwórz drugie wystąpienie projektu.

  5. Ustaw punkt przerwania w kodzie projektu.

  6. W nowym wystąpieniu programu Visual Studio na pasku menu wybierz pozycję Debuguj>dołączanie do procesu.

  7. W oknie dialogowym Dołączanie do procesu na liście Dostępne procesy wybierz proces zgodny z wersją programu Visual Studio, której używasz, oraz platformą, dla której programujesz (zobacz poniższą tabelę), a następnie wybierz przycisk Dołącz.

    Wersja programu Visual Studio Platforma Nazwa procesu
    2017–2022 Aplikacje platformy UWP UwpSurface.exe
    2017–2022 Aplikacje WPF Core WpfSurface.exe
    Tylko wersja 2019 Struktura WPF xDesProc.exe
    Tylko 2022 r. Struktura WPF WpfSurface.exe

    Ważne

    W programie Visual Studio 2019 jest to plik WpfSurface.exe, jeśli nowy Projektant WPF XAML jest włączony w obszarze Narzędzia>Opcje>środowiska>w wersji zapoznawczej funkcji.

  8. W pierwszym wystąpieniu programu Visual Studio na pasku menu wybierz pozycję Debuguj>Rozpocznij debugowanie.

    Teraz możesz przejść do kodu, który jest uruchomiony w projektancie.

Aby wyłączyć kod projektu w projektancie

  • W nieobsługiwanym oknie dialogowym wyjątku wybierz link Kliknij tutaj, aby wyłączyć uruchamianie kodu projektu i ponownie załadować projektanta .

  • Alternatywnie na pasku narzędzi w projektancie XAML wybierz przycisk Wyłącz kod projektu.

    The Disable Project Code button

    Możesz ponownie przełączyć przycisk, aby ponownie włączyć kod projektu.

    Uwaga

    W przypadku projektów przeznaczonych dla procesorów ARM lub X64 program Visual Studio nie może uruchamiać kodu projektu w projektancie, więc przycisk Wyłącz kod projektu jest wyłączony w projektancie.

  • Każda z opcji powoduje ponowne załadowanie projektanta, a następnie wyłączenie całego kodu skojarzonego projektu.

    Uwaga

    Wyłączenie kodu projektu może prowadzić do utraty danych w czasie projektowania. Alternatywą jest debugowanie kodu uruchomionego w projektancie.

Opcje wyświetlania kontrolki

Uwaga

Opcje wyświetlania kontrolki są dostępne tylko dla aplikacji platforma uniwersalna systemu Windows przeznaczonych dla systemu Windows 10 Fall Creators Update (kompilacja 16299) lub nowszej. Funkcja Opcje wyświetlania kontrolek jest dostępna w programie Visual Studio 2017 w wersji 15.9 lub nowszej.

W projektancie XAML można zmienić opcje wyświetlania kontrolki, aby wyświetlać tylko kontrolki platformy z zestawu Windows SDK. Może to zwiększyć niezawodność projektanta XAML.

Aby zmienić opcje wyświetlania kontrolki, kliknij ikonę w lewym dolnym rogu okna projektanta, a następnie wybierz opcję w obszarze Opcje wyświetlania kontrolki:

Control Display Options

Po wybraniu opcji Tylko kontrolki platformy wyświetlania wszystkie kontrolki niestandardowe pochodzące z zestawów SDK, kontrole użytkowników klienta i nie będą renderowane całkowicie. Zamiast tego są zastępowane przez kontrolki rezerwowe w celu zademonstrowania rozmiaru i położenia kontrolki.