Partager via


Procédure pas à pas : gestion structurée des exceptions dans les projets smart device Visual Basic

Même si vous pouvez toujours utiliser l'instruction On Error pour gérer les exceptions de votre code, Visual Basic .NET prend également en charge la gestion structurée des exceptions, qui vous permet de créer et gérer des programmes avec une gestion d'erreurs complète. Dans la gestion structurée des exceptions, des blocs de code testent des situations spécifiques et réagissent en conséquence.

Cette procédure pas à pas montre comment ajouter une gestion structurée des exceptions à un programme. Elle explique comment utiliser l'instruction Try...Catch...Finally pour gérer les exceptions et comment effectuer le filtrage des erreurs dans les blocs Catch.

Remarque   Vous ne pouvez pas combiner à la fois la gestion structurée et non structurée des exceptions dans une seule procédure.

Cette procédure pas à pas se compose de quatre tâches principales :

  • Création d'un projet smart device qui utilise les Windows Forms
  • Ajout de fonctionnalités à l'application
  • Ajout d'un bloc Try...Catch pour la gestion des erreurs
  • Test de la gestion des erreurs

Choix d'un périphérique cible

La procédure suivante permet d'afficher un message vous invitant à sélectionner un périphérique lorsque vous déployez une solution.

Pour être invité à sélectionner le périphérique cible au moment du déploiement

  1. Dans le menu Outils, cliquez sur Options, puis sur Outils de périphérique.
  2. Activez la case à cocher Afficher les choix de périphériques avant de déployer un projet smart device.

Création de l'application

L'application de cette procédure pas à pas est un extrait d'un formulaire de commande d'un client pour une société qui vend des ours en peluche. L'interface utilisateur se compose des contrôles suivants : deux contrôles ComboBox pour sélectionner la couleur et la taille de l'ours et un bouton Commander. Lorsque l'utilisateur entre les informations demandées puis clique sur le bouton Commander, l'application affiche un résumé de la commande.

Pour créer l'application Windows Forms pour cette procédure pas à pas

  1. Dans le menu Fichier de Visual Studio .NET, pointez sur Nouveau, puis cliquez sur Projet.
  2. Dans la boîte de dialogue Nouveau projet, sous Types de projets, cliquez sur Projets Visual Basic.
  3. Dans la zone Nom, tapez TeddyBearProject.
  4. Sous Modèles, double-cliquez sur Application Smart Device.
  5. Dans l'Assistant Application Smart Device, cliquez dans le volet supérieur sur Windows CE et dans le volet inférieur sur Application Windows.
  6. À partir de la Boîte à outils, ajoutez les contrôles du tableau suivant et définissez leurs propriétés comme indiqué.
    Contrôle Propriétés Valeurs de la propriété
    Label Name
    Text
    bearColorLabel
    Couleurs disponibles
    ComboBox Name
    Items
    Text
    BearColor
    Noir, Brun, Tacheté
    Couleur de l'ours
    Label Name
    Text
    bearSizeLabel
    Tailles disponibles
    ComboBox Name
    Items
    Text
    BearSize
    Petit, Normal, Grand
    Taille de l'ours
    Button Name
    Text
    Order
    Commander

Ajout de fonctionnalités

Après avoir ajouté et défini les contrôles et leurs propriétés, vous allez maintenant insérer du code derrière eux pour que l'application fonctionne. Le code suivant traite l'événement Click du bouton Commander et affiche un message pour le client.

Pour ajouter des fonctionnalités au formulaire et à ses contrôles

  1. Double-cliquez sur le bouton du formulaire pour ouvrir l'éditeur de code avec le curseur placé dans le gestionnaire d'événements Order_Click. Ajoutez le code suivant au gestionnaire :

       Dim bearOrder As String
       bearOrder = _
         String.Format("You have ordered a {0} {1} bear.", _
         bearSize.SelectedItem, bearColor.SelectedItem)
       MessageBox.Show(bearOrder)
    

    Vous pouvez désormais ajouter un code de gestion structurée des exceptions à l'application.

  2. Dans le menu Fichier, cliquez sur Enregistrer tout.

Ajout d'un bloc Try...Catch

Pour vous assurer que le client a indiqué une couleur pour l'ours, ajoutez une instruction Try...Catch. Ne perdez pas de vue les points suivants :

  • Une clause Catch sans identificateur intercepte toutes les exceptions.
  • Une clause Catch avec une clause When n'intercepte les exceptions que lorsque l'expression correspond à la valeur True ; le type de l'expression doit être implicitement convertible en type Boolean.

Pour ajouter un bloc Try...Catch simple

  1. Ajoutez l'instruction Try à l'événement Click du bouton Commander après la ligne de code Dim bearOrder As String :

    Try
    

    Remarque   Si vous appuyez sur ENTRÉE après avoir tapé Try, l'éditeur de code de Visual Basic .NET essaie de compléter la structure en ajoutant End Try. Si tel est le cas, supprimez les instructions Catch ou End Try superflues.

  2. Ajoutez le code suivant à l'événement Click du bouton Commander après la section qui teste les valeurs de couleur et de taille, c'est-à-dire après String.Format("You have ordered a {0} {1} bear.", BearSize.SelectedItem, BearColor.SelectedItem). Ce code lève une exception si une valeur de couleur non valide est trouvée.

       If ((BearColor.SelectedIndex < 0) or _
             (BearColor.SelectedIndex > 2)) Then
          Throw New System.Exception()
       End If
    ' The Catch statement handles errors caused by a lack of bear color.
    Catch ex As Exception When BearColor.SelectedIndex < 0
       bearOrder = String.Format("You must select a bear color!")
    Finally
       Beep () ' Beep at the end.
    End Try
    

Pour ajouter une autre clause Catch

  1. Dans le Concepteur Windows Forms, ajoutez un nouvel élément (« Violet »), au contrôle ComboBox BearColor.

  2. Dans l'éditeur de code, ajoutez le code suivant après la ligne de code bearOrder = String.Format("You must select a bear color!") :

    Catch ex As Exception When BearColor.SelectedIndex = 3
       bearOrder = String.Format("There are no bears of that color.")
    

    Vous pouvez ajouter autant de clauses Catch que nécessaire à votre code.

  3. Dans le menu Fichier, cliquez sur Enregistrer tout.

Génération et test

Vous pouvez à présent tester l'application afin de vous assurer qu'elle fonctionne correctement. Si le client clique sur le bouton Commander sans avoir sélectionné de couleur, la première clause Catch affiche le message « You must select a bear color! ». Si le client clique sur le bouton Commander après avoir sélectionné la couleur violet, la seconde clause Catch affiche le message « There are no bears of that color! ».

Cette procédure pas à pas ne contient pas de clause Catch pour le cas où la taille de l'ours n'est pas spécifiée. Vous pouvez ajouter à cet effet votre propre clause Catch (en prenant comme modèle la clause qui gère l'absence de sélection de couleur).

Pour générer et exécuter l'application

  1. Dans le menu Déboguer, cliquez sur Démarrer.

  2. Dans la boîte de dialogue Déployer, sélectionnez Émulateur Windows CE .NET, puis cliquez sur Déployer.

    Remarque   La boîte de dialogue Déployer ne s'ouvre pas si vous avez déjà sélectionné un périphérique cible et désactivé la case à cocher Afficher cette boîte de dialogue à chaque déploiement de l'application. La case à cocher Afficher cette boite de dialogue à chaque déploiement de l’application doit être activée pour cette procédure pas à pas.

    Le projet sera téléchargé vers l'émulateur et lancé.

Pour tester l'application

  1. Dans l'émulateur, sélectionnez une couleur et une taille d'ours dans les zones de liste déroulantes Couleurs disponibles et Tailles disponibles.

  2. Cliquez sur le bouton Commander.

    Si vous avez spécifié la couleur Noir, Brun ou Tacheté à l'étape précédente, un message apparaît indiquant la taille et la couleur de l'ours que vous avez commandé.

    Si vous n'avez pas spécifié de couleur, un message vous invite à en sélectionner une.

  3. Cliquez sur OK pour fermer le message.

  4. Dans la zone Couleurs disponibles, sélectionnez Violet, puis cliquez sur le bouton Commander.

    Un message apparaît indiquant que les ours violets ne sont pas disponibles.

Voir aussi

Procédure pas à pas : gestion structurée des exceptions | On Error, instruction | Try...Catch...Finally, instructions | Gestion structurée des exceptions | Throw, instruction | Levée d'exceptions à partir des composants | Procédures pas à pas relatives aux projets smart device