Partager via


Procédure pas à pas : débogage d'une application WPF

Cette procédure pas à pas indique comment déboguer une application Windows Presentation Foundation (WPF) simple avec le Concepteur WPF. Vous utiliserez la boîte de dialogue Assistant Exception pour interpréter une exception d'analyse de langage XAML.

Dans cette procédure pas à pas, vous allez effectuer les tâches suivantes :

  • créer un projet WPF ;

  • interpréter une exception ;

  • interpréter une exception d'un contrôle enfant.

Lorsque vous aurez terminé, vous saurez comment interpréter des exceptions qui se produisent pendant l'analyse XAML.

Notes

Les boîtes de dialogue et les commandes de menu qui s'affichent peuvent être différentes de celles qui sont décrites dans l'aide, en fonction de vos paramètres actifs ou de l'édition utilisée. Pour modifier vos paramètres, choisissez Importation et exportation de paramètres dans le menu Outils. Pour plus d'informations, consultez Utilisation des paramètres.

Composants requis

Pour exécuter cette procédure pas à pas, vous devez disposer des composants suivants :

  • Visual Studio 2010.

Création du projet

La première étape consiste à créer le projet pour l'application.

Pour créer le projet

  1. Créez un projet Application WPF en Visual Basic ou Visual C# nommé DebuggingExample. Pour plus d'informations, consultez Comment : créer un projet d'application WPF.

    MainWindow.xaml s'ouvre dans le Concepteur WPF.

  2. En mode XAML, affectez à la propriété Background de la fenêtre la valeur "Azure".

    <Window x:Class="DebuggingExample.MainWindow"
        xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
        Background="Azure"
        Title="MainWindow" Height="300" Width="300">
        <Grid>
    
        </Grid>
    </Window> 
    

    La couleur d'arrière-plan de la fenêtre se met à jour en mode Design.

  3. Changez "Azure" en "Azurer" et cliquez sur le mode Design.

    En mode Design, le message suivant s'affiche : « Le document contient des erreurs qui doivent être corrigées avant que le concepteur puisse être actualisé. Cliquez ici pour ouvrir la liste d'erreurs. »

    De plus, la Liste d'erreurs indique un message d'erreur « Jeton non valide ».

  4. Dans le menu Déboguer, cliquez sur Démarrer le débogage.

    L'application démarre, le mode XAML s'ouvre et la boîte de dialogue Assistant Exception s'affiche, comme indiqué dans l'illustration suivante.

    Assistant Exception affichant une erreur d'analyse XAML

    Remarque Si le mode XAML ne s'ouvre pas lorsque l'Assistant Exception s'affiche, désactivez l'option de débogage Uniquement mon code. Pour plus d'informations, consultez Comment : effectuer un pas à pas détaillé dans Uniquement mon code.

Interprétation de l'exception

L'exception est une erreur d'analyse XAML. La boîte de dialogue Assistant Exception vous montre des informations à propos de l'erreur, informations que vous pouvez utiliser pour en déduire sa cause.

Pour interpréter l'exception

  1. Dans la boîte de dialogue Assistant Exception, cliquez sur le lien Afficher les détails....

    La boîte de dialogue Afficher les détails s'ouvre.

  2. Dans la section Instantané de l'exception, développez l'élément System.Windows.Markup.XamlParseException.

    L'élément LineNumber indique 3 et l'élément LinePosition indique 5.

  3. Cliquez sur l'élément Message.

  4. Un bouton fléché vers le bas s'affiche à la fin de la ligne. Cliquez sur ce bouton pour afficher tout le message d'erreur, comme indiqué dans l'illustration suivante.

    Assistant Exception affichant une erreur d'analyse XAML

    Le message indique « Impossible de convertir la valeur de l'attribut "Background" en objet de type "System.Windows.Media.Brush". Jeton non valide. Erreur de l'objet 'DebuggingExample.MainWindow' dans le fichier de balisage 'DebuggingExample;component/MainWindow.xaml', ligne 3, position 5."

  5. Cette exception décrit une erreur d'analyse XAML rencontrée dans le fichier MainWindow.xaml, à la ligne cinq.

    L'exception est levée car le TypeConverter pour Brush n'a pas pu convertir la chaîne "Azurer" en un objet Brush.

  6. Cliquez sur OK pour fermer la boîte de dialogue Afficher les détails.

  7. Cliquez sur OK pour fermer la boîte de dialogue Assistant Exception.

  8. Dans le menu Déboguer, sélectionnez Arrêter le débogage.

Création du projet UserControl

Vous pouvez utiliser la boîte de dialogue Assistant Exception pour interpréter des erreurs déclenchées depuis contrôle situé dans un assembly distinct.

Pour créer le projet

  1. En mode XAML, modifiez la valeur de la propriété Background en "Azure".

  2. Ajoutez un nouveau projet de bibliothèque de contrôles utilisateur WPF nommé DemoControlLibrary à la solution. Pour plus d'informations, consultez Comment : créer un projet de bibliothèque UserControl WPF.

    UserControl1.xaml s'ouvre dans le Concepteur WPF.

  3. En mode XAML, affectez à la propriété Background de la fenêtre la valeur "Plum".

    <UserControl x:Class="DemoControlLibrary1.UserControl1"
        xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
        Background="Plum"
        Height="300" Width="300">
        <Grid>
    
        </Grid>
    </UserControl>
    
  4. Générez la solution.

  5. Dans l'Explorateur de solutions, dans le projet DebuggingExample, ajoutez une référence au projet DemoControlLibrary.

  6. Ouvrez MainWindow.xaml dans le Concepteur WPF.

  7. Mappez l'espace de noms DemoControlLibrary en insérant le code XAML suivant dans la balise d'ouverture <Window>. Pour plus d'informations, consultez Comment : importer un espace de noms en XAML.

    xmlns:d="clr-namespace:DemoControlLibrary;assembly=DemoControlLibrary"
    
  8. Insérez le code XAML suivant après la balise d'ouverture <Grid>.

    <d:UserControl1 />
    

    Le mode Design se met à jour avec la nouvelle couleur d'arrière-plan.

  9. Ouvrez UserControl1.xaml dans le Concepteur WPF.

  10. En mode XAML, remplacez "Plum" par "Plumr".

  11. Dans le menu Déboguer, cliquez sur Démarrer le débogage.

    L'application démarre, le mode XAML s'ouvre sur UserControl1.xaml, et la boîte de dialogue Assistant Exception s'affiche.

    Remarque Si le mode XAML ne s'ouvre pas lorsque l'Assistant Exception s'affiche, désactivez l'option de débogage Uniquement mon code. Pour plus d'informations, consultez Comment : effectuer un pas à pas détaillé dans Uniquement mon code.

Étapes suivantes

  • Vous pouvez également utiliser la fenêtre Liste d'erreurs pour consulter les erreurs d'analyse XAML au moment du design. Pour plus d'informations, consultez Erreurs XAML et aide.

Voir aussi

Concepts

Erreurs XAML et aide

Gestion des exceptions (débogage)

Procédure pas à pas : génération d'une application WPF simple avec le Concepteur WPF

Autres ressources

Référence des messages d'erreur pour le Concepteur WPF

Débogage dans Visual Studio

Utilisation de contrôles dans le Concepteur WPF