0% ont trouvé ce document utile (0 vote)
210 vues302 pages

Visualstudio Get Started Csharp Vs 2022

Le document présente Visual Studio, un environnement de développement intégré (IDE) pour créer des applications C#. Il décrit les fonctionnalités clés de Visual Studio, telles que le débogage, IntelliSense, et la refactorisation, ainsi que le processus d'installation et de création d'un projet simple. Enfin, il fournit des instructions sur l'utilisation de l'IDE pour écrire, tester et déboguer du code C#.

Transféré par

Mouhib Mouhib
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
210 vues302 pages

Visualstudio Get Started Csharp Vs 2022

Le document présente Visual Studio, un environnement de développement intégré (IDE) pour créer des applications C#. Il décrit les fonctionnalités clés de Visual Studio, telles que le débogage, IntelliSense, et la refactorisation, ainsi que le processus d'installation et de création d'un projet simple. Enfin, il fournit des instructions sur l'utilisation de l'IDE pour écrire, tester et déboguer du code C#.

Transféré par

Mouhib Mouhib
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Parlez-nous de l’expérience de téléchargement de PDF.

Didacticiels Visual Studio | C#


Créez des applications C# avec Visual Studio.

Démarrer

c GUIDE PRATIQUE

Télécharger et installer Visual Studio

b DÉMARRAGE

Démarrer une visite guidée

f DÉMARRAGE RAPIDE

Créer une application web « Hello World »

Créer des applications C#

g DIDACTICIEL

Créer une application console

Créer une application web

Créer une application sdk d’application Windows

Créer une application de bureau Windows

Créer une application Windows Forms

Créer une application mobile avec .NET MAUI

En savoir plus sur le langage C#

Jeu de correspondance Windows Forms

Questionnaire mathématique Windows Forms

Visionneuse d’images Windows Forms

Découvrir Visual Studio


g DIDACTICIEL

Exécuter un programme

Ouvrir le code à partir d’un dépôt

Écrire et modifier du code

Compiler et générer

Déboguer votre code

Tester votre code

c GUIDE PRATIQUE

Accéder aux données


Bienvenue dans l’IDE Visual Studio | C#
Article • 09/04/2024

Un environnement de développement intégré (IDE) est un programme riche en


fonctionnalités qui prend en charge de nombreux aspects du développement de
logiciels. L’environnement IDE Visual Studio est un panneau de lancement créatif que
vous pouvez utiliser pour modifier, déboguer et générer du code, puis publier une
application. Au-delà de l’éditeur et du débogueur standard fournis par la plupart des
IDE, Visual Studio inclut des compilateurs, des outils de complétion de code, des
concepteurs graphiques et de nombreuses autres fonctionnalités afin de faciliter le
processus de développement logiciel.

L’image précédente montre Visual Studio avec un projet ouvert qui montre les fenêtres
principales et leurs fonctionnalités :

Dans l’Explorateur de solutions, en haut à droite, vous pouvez afficher, parcourir et


gérer vos fichiers de code. L’Explorateur de solutions peut vous aider à organiser
votre code en regroupant les fichiers dans des projets et des solutions.

La fenêtre d’éditeur centrale, où vous passerez probablement la plupart de votre


temps, affiche le contenu du fichier. Dans la fenêtre de l’éditeur, vous pouvez
modifier le code ou concevoir une interface utilisateur comme une fenêtre avec
des boutons et des zones de texte.

Dans Modifications Git en bas à droite, vous pouvez suivre des éléments de travail
et partager du code avec d’autres utilisateurs à l’aide de technologies de contrôle
de version comme Git et GitHub .

Éditions
Visual Studio est disponible pour Windows et Mac. Visual Studio pour Mac compte de
nombreuses fonctionnalités en commun avec Visual Studio pour Windows, et est
optimisé pour le développement d’applications mobiles et multiplateformes. Cet article
traite essentiellement de la version Windows de Visual Studio.

Il existe trois éditions de Visual Studio : Community, Professional et Enterprise. Consultez


Comparez les éditions de Visual Studio pour en savoir plus sur les fonctionnalités
prises en charge dans chaque édition.

Fonctionnalités de productivité populaires


Voici quelques fonctionnalités populaires dans Visual Studio qui améliorent votre
productivité lors du développement de logiciels :

Tildes et Actions rapides

Les tildes sont des soulignements ondulés qui vous signalent des erreurs ou des
problèmes potentiels dans votre code en cours de frappe. Ces indices visuels vous
aident à résoudre les problèmes immédiatement, sans attendre de découvrir des
erreurs pendant la génération ou l’exécution. Si vous placez le curseur sur un
soulignement ondulé, des informations supplémentaires sur l’erreur s’affichent.
Une ampoule peut également apparaître dans la marge de gauche pour afficher
les Actions rapides que vous pouvez effectuer pour corriger l’erreur.

Nettoyage du code

D’un seul clic sur un bouton, vous pouvez formater votre code et appliquer des
correctifs de code suggérés par votre paramètres de style de code,
conventions.editorconfig et analyseurs Roslyn. Le nettoyage du code, actuellement
disponible pour le code C# uniquement, vous permet de résoudre des problèmes
dans votre code avant de passer à la révision du code.
Refactorisation

La refactorisation inclut des opérations comme le renommage intelligent des


variables, l’extraction d’une ou plusieurs lignes de code dans une nouvelle
méthode et le changement de l’ordre des paramètres de méthode.

IntelliSense

IntelliSense est un ensemble de fonctionnalités qui affichent des informations


concernant votre code directement dans l’éditeur et qui, dans certains cas, écrivent
de petits extraits de code pour vous. Cela revient à avoir de la documentation de
base incluse dans l’éditeur, ce qui vous évite d’avoir à rechercher ailleurs des
informations sur les types.

L’illustration suivante montre comment IntelliSense affiche une liste des membres
d’un type :
Les fonctionnalités d'IntelliSense varient selon le langage. Pour plus d’informations,
consultez C# IntelliSense, Visual C++ IntelliSense, JavaScript IntelliSense et Visual
Basic IntelliSense.

Recherche Visual Studio

Les menus, options et propriétés de Visual Studio peuvent parfois sembler


intimidants. La recherche Visual Studio, ou Ctrl+Q, est un excellent moyen de
trouver rapidement des fonctionnalités et du code IDE au même endroit.

Pour obtenir des informations et des conseils sur la productivité, consultez Guide
pratique pour utiliser la recherche Visual Studio.

Live Share

Modifiez et déboguez de manière collaborative avec d’autres utilisateurs en temps


réel, quels que soient le langage de programmation ou le type de votre
application. Vous pouvez partager votre projet instantanément et en toute sécurité.
Vous pouvez également partager des sessions de débogage, instances de terminal,
applications Web localhost , appels vocaux, etc.

Hiérarchie d'appels

La fenêtre Hiérarchie d’appels affiche les méthodes qui appellent une méthode
sélectionnée. Ces informations peuvent être utiles quand vous envisagez de
changer ou de supprimer la méthode, ou quand vous essayez de repérer un
bogue.

CodeLens

CodeLens vous aide à rechercher les références à votre code, les modifications
apportées à votre code, les bogues liés, les éléments de travail, les revues de code
et les tests unitaires, tout cela sans quitter l’éditeur.

Atteindre la définition

La fonctionnalité Accéder à la définition vous mène directement à l’emplacement


où une fonction ou un type est défini.
Aperçu de définition

La fenêtre Aperçu de définition montre la définition d’une méthode ou d’un type


sans ouvrir un fichier distinct.

Rechargement à chaud
Le Rechargement à chaud permet de modifier les fichiers de code de votre
application et d’appliquer immédiatement les modifications du code à l’application
en cours d’exécution.

Installation de Visual Studio


Dans cette section, vous allez créer un projet simple afin d’essayer des actions que vous
pouvez réaliser avec Visual Studio. Vous allez utiliser IntelliSense comme aide au codage,
déboguer une application pour afficher la valeur d’une variable pendant l’exécution de
l’application et modifier le thème de couleur.

Pour commencer, téléchargez Visual Studio et installez-le sur votre système. Dans le
programme d’installation modulaire, vous choisissez et installez des charges de travail,
qui sont des groupes de fonctionnalités dont vous avez besoin pour les langages de
programmation ou les plateformes que vous souhaitez. Pour utiliser les étapes suivantes
pour créer un programme, veillez à sélectionner la charge de travail de Développement
de bureau .NET pendant l’installation.

Quand vous ouvrez Visual Studio pour la première fois, vous pouvez vous connecter
avec votre compte Microsoft, ou avec votre compte professionnel ou celui de votre
établissement scolaire.

Créer un programme
Allons plus loin en créant un programme simple.

1. Démarrez Visual Studio. La fenêtre de démarrage s’affiche avec des options de


clonage d’un référentiel, d’ouverture d’un projet récent ou de création d’un
nouveau projet.

2. Choisissez Créer un projet.


La fenêtre Créer un projet s’affiche et présente plusieurs modèles de projet. Un
modèle contient les fichiers et les paramètres de base nécessaires pour un type de
projet donné.

3. Pour rechercher un modèle, vous pouvez taper ou entrer des mots clés dans la
zone de recherche. La liste des modèles disponibles est filtrée en fonction des
mots clés que vous avez entrés. Vous pouvez filtrer davantage les résultats du
modèle en choisissant C# dans la liste déroulante Tous les langages, Windows
dans la liste Toutes les plateformes et Console dans la liste Tous les types de
projets.

Sélectionnez le modèle d’Application console, puis sélectionnez Suivant.


4. Dans la fenêtre Configurer votre nouveau projet, entrez HelloWorld dans la zone
Nom du projet. Si vous le souhaitez, modifiez l’emplacement du répertoire du
projet en remplaçant l’emplacement par défaut C:\Users\<name>\source\repos,
puis sélectionnez Suivant.

5. Dans la fenêtre Informations supplémentaires, vérifiez que .NET 8.0 s’affiche dans
le menu déroulant Version cible de .Net Framework, puis sélectionnez Créer.

Visual Studio crée le projet. Le programme est une application « Hello World »
simple qui appelle la méthode Console.WriteLine() pour afficher la chaîne Hello,
World! dans une fenêtre de console.

Les fichiers projet s’affichent à droite de l’IDE Visual Studio, dans une fenêtre
appelée Explorateur de solutions. Dans la fenêtre Explorateur de solutions,
sélectionnez le fichier Program.cs. Le code C# de votre application s’ouvre dans la
fenêtre centrale de l’éditeur, qui occupe la majeure partie de l’espace.

Le code est colorisé automatiquement pour indiquer ses différentes parties,


comme les mots clés et les types. Les numéros de ligne vous aident à localiser le
code.
De petites lignes en pointillés verticaux dans le code indiquent les accolades qui
correspondent les unes aux autres. Vous pouvez également choisir de petits signes
plus ou moins encadrés pour réduire ou développer les blocs de code. Cette
fonctionnalité de surlignage de code vous permet de masquer le code que vous
n’avez pas besoin de voir, ce qui contribue à réduire l’encombrement à l’écran.

De nombreux autres menus et fenêtres d’outils sont disponibles.

6. Démarrez l’application en choisissant Débogage>Démarrer sans débogage dans


le menu supérieur de Visual Studio. Vous pouvez également appuyer sur Ctrl+F5.
Visual Studio génère l’application, et une fenêtre de console s’ouvre avec le
message Hello, World!. Maintenant, votre application fonctionne !

7. Pour fermer la fenêtre de console, appuyez sur n’importe quelle touche.

8. Ajoutons du code supplémentaire à l’application. Ajoutez le code C# suivant avant


la ligne qui indique Console.WriteLine("Hello World!"); :

C#

Console.WriteLine("\nWhat is your name?");


var name = Console.ReadLine();
Ce code affiche What is your name? dans la fenêtre de console, puis attend que
l’utilisateur entre du texte.

9. Remplacez la ligne qui indique Console.WriteLine("Hello World!"); par la ligne


suivante :

C#

Console.WriteLine($"\nHello {name}!");

10. Réexécutez l’application en sélectionnant Déboguer>Démarrer sans débogage ou


en appuyant sur Ctrl+F5.

Visual Studio régénère l’application et une fenêtre de console s’ouvre et vous


demande votre nom.

11. Entrez votre nom dans la fenêtre de console et appuyez sur Entrée.

12. Appuyez sur une touche pour fermer la fenêtre de console et arrêter le programme
en cours d’exécution.

Utiliser la refactorisation et IntelliSense


Examinons comment la refactorisation et IntelliSense peuvent vous aider à coder plus
efficacement au travers de deux ou trois exemples.

Tout d’abord, renommez la variable name :

1. Double-cliquez sur la variable name , puis tapez le nouveau nom de la variable,


username.

Une zone grisée apparaît autour de la variable et une ampoule s’affiche dans la
marge.
2. Sélectionnez l’icône d’ampoule pour afficher les Actions rapides disponibles.
Sélectionnez Renommer « name » en « username ».

La variable est renommée dans tout le projet, ce qui, dans notre cas, représente
uniquement deux emplacements.

3. À présent, examinons IntelliSense. Sous la ligne indiquant


Console.WriteLine($"\nHello {username}!"); , tapez DateTime now = DateTime. .

Une zone affiche les membres de la classe DateTime. La description du membre


actuellement sélectionné s’affiche également dans une zone distincte.

4. Sélectionnez le membre nommé Maintenant, qui est une propriété de la classe, en


double-cliquant dessus ou en appuyant sur Onglet. Terminez la ligne de code en
ajoutant un point-virgule à la fin de la ligne : DateTime now = DateTime.Now; .

5. Sous cette ligne, entrez les lignes de code suivantes :

C#

int dayOfYear = now.DayOfYear;

Console.Write("Day of year: ");


Console.WriteLine(dayOfYear);

 Conseil

La méthode Console.Write diffère de Console.WriteLine dans la mesure où


elle n’ajoute pas de marque de fin de ligne une fois imprimée. Cela signifie
que la portion de texte suivante qui est envoyée à la sortie s’imprime sur la
même ligne. Vous pouvez placer le curseur sur chacune de ces méthodes dans
votre code pour afficher la description.

6. Nous allons ensuite utiliser la refactorisation pour rendre le code un peu plus
concis. Sélectionnez la variable now dans la ligne DateTime now = DateTime.Now; .
Une icône de tournevis s’affiche dans la marge de cette ligne.

7. Sélectionnez l’icône de tournevis pour afficher les suggestions disponibles à partir


de Visual Studio. Dans le cas présent, il affiche la refactorisation de la variable
temporaire inline pour supprimer une ligne de code sans changer le
comportement global du code.

8. Sélectionnez Variable temporaire inline pour refactoriser le code.

9. Réexécutez le programme en appuyant sur CTRL+F5. La sortie ressemble à ceci :


Déboguer du code
Quand vous écrivez du code, vous devez l’exécuter et le tester pour rechercher les
bogues. Le système de débogage de Visual Studio vous permet de parcourir le code
instruction par instruction et d’en examiner les variables au fur et à mesure de votre
avancement. Vous pouvez définir des points d’arrêt qui arrêtent l’exécution du code sur
une ligne particulière et observer comment la valeur de la variable change à mesure que
le code s’exécute.

Définissons un point d’arrêt pour voir la valeur de la variable username quand le


programme est en cours.

1. Définissez un point d’arrêt sur la ligne de code qui indique


Console.WriteLine($"\nHello {username}!"); en cliquant dans la marge la plus à
gauche, à côté de la ligne. Vous pouvez également sélectionner la ligne de code,
puis appuyer sur F9.

Un cercle rouge apparaît dans la marge et la ligne est mise en surbrillance.

2. Démarrez le débogage en sélectionnant Déboguer>Démarrer le débogage ou en


appuyant sur F5.

3. Quand la fenêtre de console s’affiche et vous y invite, entrez votre nom.

Le focus retourne à l’éditeur de code Visual Studio et la ligne de code avec le point
d’arrêt est mise en surbrillance en jaune. La mise en surbrillance en jaune signifie
que cette ligne de code va s’exécuter ensuite. Le point d’arrêt interrompt
l’exécution de l’application à cette ligne.

4. Placez le pointeur de la souris sur la variable username pour afficher sa valeur. Vous
pouvez également cliquer avec le bouton droit sur username et sélectionner
Ajouter un espion pour ajouter la variable à la fenêtre Espion, dans laquelle vous
pouvez également voir sa valeur.

5. Appuyez à nouveau sur F5 pour terminer l’exécution de l’application.

Une fois l’application en cours d’exécution, vous pouvez appliquer des modifications de
code à l’application en cours d’exécution en cliquant sur le bouton Rechargement à
chaud.

Pour plus d’informations sur le débogage dans Visual Studio, consultez la Présentation
des fonctionnalités du débogueur.

Personnaliser Visual Studio


Vous pouvez personnaliser l’interface utilisateur de Visual Studio, notamment changer le
thème de couleur par défaut. Pour modifier le thème de couleur :

1. Dans la barre de menus, choisissez Outils>Options pour ouvrir la boîte de


dialogue Options.

2. Sur la page des options générales >de l'environnement, remplacez la sélection du


Thème de couleur par Bleu or Clair, puis sélectionnez OK.

Le thème de couleur pour l’ensemble de l’IDE change en conséquence. La capture


d’écran suivante montre le thème Bleu :
Pour en savoir plus sur les autres façons possibles de personnaliser l’IDE, consultez
Personnaliser Visual Studio.

Sélectionner les paramètres d’environnement


Vous pouvez configurer Visual Studio pour utiliser les paramètres d’environnement
adaptés aux développeurs C# :

1. Dans la barre de menus, choisissez Outils>Importation et exportation de


paramètres.

2. Dans l’Assistant Importation et exportation de paramètres, sélectionnez


Réinitialiser tous les paramètres, puis Suivant.

3. Dans la page Enregistrer les paramètres actuels, choisissez d’enregistrer vos


paramètres actuels avant la réinitialisation. Si vous n’avez personnalisé aucun
paramètre, sélectionnez Non, réinitialiser simplement les paramètres en
remplaçant mes paramètres actuels. Sélectionnez ensuite Suivant.

4. Dans la page Choisir une collection de paramètres par défaut, sélectionnez Visual
C#, puis Terminer.

5. Dans la page Réinitialisation terminée, sélectionnez Fermer.

Pour en savoir plus sur les autres façons possibles de personnaliser l’IDE, consultez
Personnaliser Visual Studio.

Étapes suivantes
Explorez davantage Visual Studio en suivant l’un de ces articles d’introduction :

Apprendre à utiliser l’éditeur de code

Découvrir les projets et les solutions

Voir aussi
Découvrez d’autres fonctionnalités de Visual Studio.
Consultez visualstudio.microsoft.com .
Consultez le blog Visual Studio .

Commentaires
Cette page a-t-elle été utile ?  Yes  No
Apprenez à utiliser l’éditeur de code
avec C#
Article • 03/02/2025

Dans cette introduction de 10 minutes à l’éditeur de code dans Visual Studio, nous
allons ajouter du code à un fichier pour examiner certaines des façons dont Visual
Studio facilite l’écriture, la navigation et la compréhension du code C#.

Si vous n’avez pas encore installé Visual Studio, accédez à la page Téléchargements
Visual Studio pour l’installer gratuitement.

Cet article part du principe que vous connaissez déjà C#. Si ce n’est pas le cas, nous
vous suggérons de consulter un didacticiel tel que Bien démarrer avec C# et ASP.NET
Core dans Visual Studio d’abord.

 Conseil

Pour suivre cet article, vérifiez que les paramètres C# sont sélectionnés pour Visual
Studio. Pour plus d’informations sur la sélection des paramètres pour
l’environnement de développement intégré (IDE), consultez Sélectionner les
paramètres d’environnement.

Créer un fichier de code


Commencez par créer un fichier et y ajouter du code.

1. Ouvrez Visual Studio. Appuyez sur Échap, ou choisissez Continuer sans code dans
la fenêtre de démarrage pour ouvrir l’environnement de développement.

2. Dans le menu Fichier dans la barre de menus, choisissez Nouveau fichier>, ou


appuyez sur Ctrl+N.

3. Dans la boîte de dialogue Nouveau fichier, sous la catégorie Général, choisissez


classe Visual C#, puis choisissez Ouvrir.

Un nouveau fichier s’ouvre dans l’éditeur avec le squelette d’une classe C#. Vous
n’avez pas besoin de créer un projet Visual Studio complet pour bénéficier de
certains des avantages offerts par l’éditeur de code : tout ce dont vous avez besoin
est un fichier de code.
Utiliser des extraits de code
Visual Studio fournit des extraits de code utiles que vous pouvez utiliser pour générer
rapidement et facilement des blocs de code couramment utilisés. extraits de code sont
disponibles pour différents langages de programmation, notamment C#, Visual Basic et
C++.

Ajoutons l’extrait de code C# void Main à notre fichier.

1. Placez votre curseur juste au-dessus de l’accolade fermante finale } dans le fichier,
puis tapez les caractères svm . svm signifie static void Main , ne vous inquiétez pas
si vous ne savez pas encore ce que cela signifie.

Une boîte de dialogue contextuelle s’affiche avec des informations sur l’extrait de
code svm .

2. Appuyez sur Tab deux fois pour insérer l’extrait de code.


Vous verrez que la signature de méthode static void Main() est ajoutée au
fichier. La méthode Main() est le point d’entrée pour les applications C#.

Les extraits de code disponibles varient selon les différents langages de programmation.
Vous pouvez examiner les extraits de code disponibles pour votre langue en choisissant
Modifier>IntelliSense>Insérer un extrait de code ou en appuyant sur Ctrl+K, Ctrl+X,
puis en choisissant le dossier de votre langage de programmation. Pour C#, la liste
d’extraits de code ressemble à ceci :

La liste inclut des extraits de code pour créer une classe , un constructeur , une boucle
pour, une instruction si ou switch, etc.

Commenter du code
La barre d’outils, qui est la ligne de boutons sous la barre de menus de Visual Studio,
vous permet de vous rendre plus productif lorsque vous codez. Par exemple, vous
pouvez activer ou désactiver le mode de saisie semi-automatique IntelliSense,
augmenter ou réduire un retrait d’une ligne, ou commenter du code que vous ne voulez
pas compiler.

Nous allons commenter du code.


1. Collez le code suivant dans le corps de la méthode Main() .

C#

// someWords is a string array.


string[] someWords = {
"the",
"quick",
"brown",
"fox",
"jumps"
};

string[] moreWords = {
"over",
"the",
"lazy",
"dog"
};

// Alphabetically sort the words.


IEnumerable<string> query = from word in someWords
orderby word
select word;

2. Nous n’utilisons pas la variable moreWords , mais nous pouvons l’utiliser


ultérieurement afin de ne pas vouloir la supprimer. Au lieu de cela, nous allons
commenter ces lignes. Sélectionnez la définition entière de moreWords jusqu’au
point-virgule fermant, puis choisissez le bouton Commenter les lignes
sélectionnées de la barre d’outils. Si vous préférez utiliser le clavier, appuyez sur
Ctrl+E, Ctrl+C.

Les caractères de commentaire C# // sont ajoutés au début de chaque ligne


sélectionnée pour commenter le code.

Réduire les blocs de code


Nous n’avons pas besoin de voir le constructeur vide de Class1 qui a été généré. Pour
plus de lisibilité, nous allons donc réduire ce bloc de code. Choisissez la petite case grise
avec le signe moins qui se trouve dans la marge de la première ligne du constructeur.
Ou, si vous préférez utiliser le clavier, placez le curseur n’importe où dans le code du
constructeur et appuyez sur Ctrl+M, Ctrl+M.

Le bloc de code s’réduit à la première ligne, suivi d’un point de suspension ( ... ). Pour
développer à nouveau le bloc de code, sélectionnez la même zone grise qui comporte
maintenant un signe plus, ou appuyez à nouveau sur Ctrl+M, Ctrl+M. Cette
fonctionnalité, appelée Mode Plan, est très utile pour réduire des méthodes longues ou
des classes entières.

Afficher les définitions de symboles


L’éditeur Visual Studio facilite l’inspection de la définition d’un type, d’une méthode ou
d’une variable. L’une des façons consiste à accéder à la définition, dans quel fichier qu’il
contient, en choisissant Atteindre la définition ou en appuyant sur F12 n’importe où un
symbole est référencé. Une autre façon encore plus rapide, sans avoir à déplacer le
focus en dehors du code dans lequel vous travaillez, consiste à utiliser la fonctionnalité
Aperçu de la définition.

Examinons la définition du type string .

1. Cliquez avec le bouton droit sur une occurrence de string , puis choisissez Aperçu
de la définition dans le menu de contenu. Ou appuyez sur Alt+F12.

Une fenêtre contextuelle s’affiche avec la définition de la classe String . Vous


pouvez faire défiler la fenêtre contextuelle, ou même afficher la définition d’un
autre type à partir du code aperçu.

2. Fermez la fenêtre de définition d’aperçu en choisissant la petite zone avec un « x »


en haut à droite de la fenêtre contextuelle.
Utiliser IntelliSense pour compléter les mots
IntelliSense est une ressource inestimable lorsque vous codez. Il peut vous afficher des
informations sur les membres disponibles d’un type ou des détails de paramètre pour
différentes surcharges d’une méthode. Vous pouvez également utiliser IntelliSense pour
terminer un mot après avoir tapé suffisamment de caractères pour le lever d’ambiguïté.

Ajoutons une ligne de code pour imprimer les chaînes ordonnées dans la fenêtre de
console, qui est l’emplacement standard pour la sortie du programme.

1. Sous la variable query , commencez à taper le code suivant :

C#

foreach (string str in qu

Une fenêtre contextuelle IntelliSense s’affiche avec des informations sur le symbole
query .

2. Pour insérer le reste du mot query à l’aide de la saisie semi-automatique


IntelliSense, appuyez sur Tab.

3. Terminez le bloc de code pour ressembler au code suivant. Vous pouvez continuer
avec les extraits de code en entrant cw , puis en appuyant sur Tab deux fois pour
générer l’instruction Console.WriteLine .

C#

foreach (string str in query)


{
Console.WriteLine(str);
}

Refactoriser un nom
Personne n’obtient le code la première fois, et l’une des choses que vous devrez peut-
être modifier est le nom d’une variable ou d’une méthode. Essayons la fonctionnalité de
refactorisation de Visual Studio pour renommer la variable someWords en unsortedWords .

1. Placez votre curseur sur la définition de la variable someWords , puis choisissez


Renommer dans le menu contextuel ou cliquez avec le bouton droit, ou appuyez
sur F2.

Une boîte de dialogue Renommer s’affiche en haut à droite de l’éditeur.

2. Entrez le nom souhaité, unsortedWords. Vous verrez que la référence à


unsortedWords dans l’instruction d’affectation query est également renommée

automatiquement. Avant d’appuyer sur Entrée, cochez la case Inclure les


commentaires dans la boîte de dialogue contextuelle Renommer.

3. Appuyez sur Entrée ou choisissez Appliquer dans la boîte de dialogue Renommer.


Les deux occurrences de someWords dans votre code ont été renommées, ainsi que
le texte someWords dans votre commentaire de code.

Étapes suivantes
En savoir plus sur les projets et les solutions

Voir aussi
extraits de code
Naviguer dans le code
Mode Plan
Accéder à la définition et afficher la définition
Refactorisation
Utiliser IntelliSense

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Présentation des projets et des solutions
Article • 31/01/2025

Dans ce tutoriel, vous allez explorer ce qu’il signifie pour créer une solution et un projet
dans Visual Studio. Une solution est un conteneur pour organiser un ou plusieurs projets
de code connexes, comme un projet de bibliothèque de classes et un projet de test
correspondant. Vous créez une référence d’un projet à un autre dans une solution. Ce
tutoriel décrit également les propriétés d’un projet et certains des fichiers qu’il peut
contenir.

En tant qu’exercice pour comprendre le concept d’un projet, vous créez une solution et
un projet à partir de zéro. En règle générale, vous utiliseriez des modèles de projet
Visual Studio pour créer de nouveaux projets.

Dans ce tutoriel, vous allez apprendre à :

" Ajouter un élément au projet


" Ajouter un deuxième projet
" Ajouter une référence de projet
" Ajouter du code de test
" Afficher les propriétés du projet

Conditions préalables
Si vous n'avez pas Visual Studio, allez sur Téléchargements de Visual Studio pour
l'installer gratuitement.

Solutions et projets
Dans Visual Studio, une solution n’est pas une réponse . Une solution est simplement un
conteneur que Visual Studio utilise pour organiser un ou plusieurs projets connexes.
Lorsque vous ouvrez une solution, Visual Studio charge automatiquement tous les
projets que la solution contient.

7 Notes

Le développement d’applications dans Visual Studio ne nécessite pas de solutions


et de projets. Vous pouvez simplement ouvrir un dossier qui contient du code et
démarrer le codage, la génération et le débogage. Par exemple, un dépôt GitHub
cloné peut ne pas contenir de projets et de solutions Visual Studio. Pour plus
d’informations, consultez Développer du code dans Visual Studio sans projets ni
solutions.

Créer une solution


Démarrez votre exploration en créant une solution vide. Après avoir appris à connaître
Visual Studio, vous ne créerez probablement pas souvent de solutions vides. Lorsque
vous créez un projet, Visual Studio crée automatiquement une solution pour le projet,
sauf si une solution est déjà ouverte.

1. Ouvrez Visual Studio, puis, dans la fenêtre de démarrage, sélectionnez Créer un


projet.

2. Dans la page Créer un projet, tapez solution vide dans la zone de recherche,
sélectionnez le modèle Solution vide, puis Suivant.

 Conseil

Si plusieurs charges de travail sont installées, le modèle Solution Vide peut ne


pas apparaître en haut de votre liste de résultats de recherche. Essayez de
faire défiler l’écran jusqu’à Autres résultats en fonction de votre recherche
pour trouver le modèle.
3. Dans la page Configurer votre nouveau projet, nommez la solution QuickSolution,
puis sélectionnez Créer.

La solution QuickSolution s’affiche dans l'Explorateur de solutions à droite de la


fenêtre Visual Studio. Vous utiliserez Explorateur de solutions souvent pour
parcourir le contenu de vos projets.

Ajouter un projet
Ajoutez maintenant votre premier projet à la solution. Commencez par un projet vide et
ajoutez les éléments dont vous avez besoin.

1. Dans l’Explorateur de Solutions, faites un clic droit sur la Solution


« QuickSolution ». Dans le menu contextuel, sélectionnez Ajouter>nouveau
projet.

2. Dans la page Ajouter un nouveau projet, tapez vide dans la zone de recherche en
haut, puis sélectionnez C# sous Tous les langages.

3. Sélectionnez le modèle de projet vide (.NET Framework) C# , puis sélectionnez


Prochain.

7 Notes

Visual Studio utilise l’installation basée sur la charge de travail pour installer
uniquement les composants dont vous avez besoin pour le type de
développement que vous faites. Si vous ne voyez pas le modèle Projet Vide
(.NET Framework), installez la charge de travail de développement pour
bureau .NET dans Visual Studio.

Un moyen simple d'installer une nouvelle charge de travail lorsque vous créez
un projet consiste à sélectionner le lien Installer d'autres outils et
fonctionnalités sous le texte qui indique Ne trouvez-vous pas ce que vous
recherchez ?. Dans Visual Studio Installer, sélectionnez la charge de travail
Développement .NET Desktop, puis sélectionnez Modifier.

4. Dans la page Configurer votre nouveau projet, nommez le projet QuickDate, puis
sélectionnez Créer.
Le projet QuickDate s’affiche sous la solution dans l’Explorateur de solutions. Le
projet contient un nœud Références et un seul fichier nommé App.config.

Ajouter un élément au projet


Ajoutez un fichier de code à votre projet vide.

1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet


QuickDate. Dans le menu contextuel, sélectionnez Ajouter>nouvel élément.

La boîte de dialogue Ajouter un nouvel élément s’ouvre. Sélectionnez Afficher


tous les modèles si la boîte de dialogue s’ouvre en mode compact.

2. Développez Éléments Visual C#, puis sélectionnez Code. Dans le volet central,
sélectionnez le modèle d’élément classe. Sous Nom, saisissez Calendrier, puis
sélectionnez Ajouter.

Visual Studio ajoute un fichier nommé Calendar.cs au projet. Le .cs à la fin est
l’extension de fichier pour les fichiers de code C#. Le fichier Calendar.cs s’affiche
dans l’Explorateur de solutions hiérarchie de projet visuel, et le fichier s’ouvre dans
l’éditeur.

3. Remplacez le contenu du fichier Calendar.cs par le code suivant :

C#

using System;

namespace QuickDate
{
internal class Calendar
{
static void Main(string[] args)
{
DateTime now = GetCurrentDate();
Console.WriteLine($"Today's date is {now}");
Console.ReadLine();
}

internal static DateTime GetCurrentDate()


{
return DateTime.Now.Date;
}
}
}
Vous n’avez pas besoin de comprendre tout ce que fait le code. Exécutez
l’application en appuyant sur Ctrl+F5. L'application imprime la date du jour sur la
fenêtre de console ou de sortie standard. Fermez ensuite la fenêtre de console.

Ajouter un deuxième projet


Les solutions contiennent généralement plusieurs projets, et ces projets font souvent
référence les uns aux autres. Certains projets d’une solution peuvent être des
bibliothèques de classes, certains peuvent être des applications exécutables, et certains
peuvent être des projets de test unitaire ou des sites web.

Pour ajouter un projet de test unitaire à votre solution, commencez à partir d’un modèle
de projet afin que vous n’ayez pas à ajouter un autre fichier de code au projet.

1. Dans l’Explorateur de Solutions, faites un clic droit sur la Solution


« QuickSolution ». Dans le menu contextuel, sélectionnez Ajouter>nouveau
projet.

2. Dans la boîte de dialogue Ajouter un nouveau projet, tapez test unitaire dans la
zone de recherche en haut, puis sélectionnez C# sous Tous les langages.

3. Sélectionnez le modèle de projet de test unitaire C# (.NET Framework), puis


sélectionnez Suivant.

4. Dans la page Configurer votre nouveau projet, nommez le projet QuickTest, puis
sélectionnez Créer.

Visual Studio ajoute le projet QuickTest à Explorateur de solutions, et le fichier


UnitTest1.cs s’ouvre dans l’éditeur.
Ajouter une référence de projet
Pour utiliser le nouveau projet de test unitaire pour tester votre méthode dans le projet
QuickDate, vous devez ajouter une référence à QuickDate au projet QuickTest. L’ajout
de la référence crée une dépendance de build entre les deux projets. Lorsque vous
générez la solution, QuickDate est construit avant QuickTest.

1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le nœud


Références du projet QuickTest. Dans le menu contextuel, sélectionnez Ajouter
une référence.

2. Dans la boîte de dialogue Gestionnaire de références, sélectionnez Projets. Dans


le volet central, cochez la case en regard de QuickDate, puis sélectionnez OK.

Une référence au projet QuickDate apparaît sous le projet QuickTest dans


l’Explorateur de solutions .
Ajouter du code de test
1. Ajoutez maintenant du code de test au fichier de code de test C#. Remplacez le
contenu de UnitTest1.cs par le code suivant :

C#

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace QuickTest
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestGetCurrentDate()
{
Assert.AreEqual(DateTime.Now.Date,
QuickDate.Calendar.GetCurrentDate());
}
}
}

Une ligne ondulée rouge apparaît sous une partie du code. Vous pouvez résoudre
cette erreur en définissant le projet de test en tant que assembly friend du projet
QuickDate.

2. Dans le fichier Calendar.cs, ajoutez l’instruction using et l’attribut


InternalsVisibleToAttribute suivants en haut du fichier pour résoudre l’erreur dans
le projet de test.

C#

using System.Runtime.CompilerServices;

[assembly: InternalsVisibleTo("QuickTest")]

Le code Calendar.cs doit ressembler à cette capture d’écran :


Exécuter le test unitaire
Pour vérifier que votre test unitaire fonctionne, dans la barre de menus, choisissez
Test>Exécuter tous les tests. La fenêtre de l’Explorateur de tests s’ouvre et vous devez
voir que le test TestGetCurrentDate est réussi.

 Conseil

Vous pouvez également ouvrir Explorateur de tests en choisissant >Explorateur de


tests à partir de la barre de menus.

Propriétés du projet
La ligne du fichier Calendar.cs qui contient l’attribut InternalsVisibleToAttribute fait
référence au nom de l’assembly ou au nom de fichier du projet QuickTest. Le nom de
l’assembly peut ne pas toujours être identique au nom du projet. Pour rechercher le
nom d’assembly d’un projet, utilisez les propriétés du projet. Les pages de propriétés
contiennent différents paramètres pour le projet.

1. Dans Explorateur de solutions, cliquez avec le bouton droit sur le projet QuickTest
et sélectionnez Propriétés, ou sélectionnez le projet, puis appuyez sur Alt+Entrée.

Les pages de propriétés pour le projet s’ouvrent sous l’onglet application. Le nom
de l’assembly du projet QuickTest est en effet QuickTest.

Si vous le souhaitez, vous pouvez modifier le nom ici. Lorsque vous générez le
projet de test, le nom du fichier binaire résultant passe de QuickTest.dll à
<NewName>.dll.

2. Explorez d’autres onglets des pages de propriétés du projet, par exemple Générer
et Déboguer. Ces onglets sont différents pour différents types de projets.

Contenu connexe
créer, utiliser et supprimer des projets et des solutions Visual Studio
Développer du code dans Visual Studio sans projets ni solutions
Gérer les propriétés de projet et de solution
Gérer les références dans un projet

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Fonctionnalités de Visual Studio
Article • 07/02/2025

Cet article décrit les fonctionnalités des développeurs expérimentés ou des


développeurs déjà familiarisés avec Visual Studio. Pour une présentation de base de
Visual Studio, consultez la vue d’ensemble de l’IDE Visual Studio.

Installation modulaire
Dans le programme d’installation modulaire de Visual Studio, vous choisissez et installez
les charges de travail vous le souhaitez. Les charges de travail sont des groupes de
fonctionnalités dont les langages de programmation ou les plateformes doivent
fonctionner. Cette stratégie modulaire permet de réduire l’encombrement de
l’installation de Visual Studio, de sorte qu’elle installe et met à jour plus rapidement.

Si vous n’avez pas encore installé Visual Studio, accédez à la page Téléchargements
Visual Studio pour l’installer gratuitement.

Pour en savoir plus sur la configuration de Visual Studio sur votre système, consultez
Installer Visual Studio.

Créer des applications Azure compatibles avec


le cloud
Visual Studio dispose d’une suite d’outils permettant de créer facilement des
applications compatibles avec le cloud Microsoft Azure. Vous pouvez configurer,
générer, déboguer, empaqueter et déployer des applications et services Azure
directement à partir de l’environnement de développement intégré (IDE) visual Studio.
Pour obtenir les outils Azure et les modèles de projet, sélectionnez la charge de travail
développement Azure lorsque vous installez Visual Studio.

) Important
La fenêtre Cloud Explorer est supprimée dans Visual Studio 2022. Pour plus
d’informations, consultez Gérer les ressources associées à vos comptes Azure dans
Visual Studio Cloud Explorer.

Utilisez le portail Azure pour accéder aux ressources Azure si nécessaire. Vous
pouvez continuer à utiliser le nœud Azure de l’Explorateur de serveurs dans les
versions précédentes de Visual Studio.

Vous pouvez utiliser des services Azure pour vos applications en ajoutant services
connectés, par exemple :

Service connecté Active Directory, pour utiliser les comptes Microsoft Entra ID
(Microsoft Entra ID) pour se connecter aux applications web
Service connecté Stockage Azure pour le stockage d’objets blob, les files d’attente
et les tables
Service connecté Key Vault pour gérer les secrets pour les applications web

Les services connectés disponibles dépendent de votre type de projet. Ajoutez un


service en faisant un clic droit sur le projet dans l’Explorateur de solutions, puis en
choisissant Ajouter>Service connecté.

Dans l’écran Services connectés, sélectionnez le lien ou le signe plus pour Ajouter une
dépendance de service. Dans l’écran Ajouter une dépendance, sélectionnez le service
que vous souhaitez ajouter, puis suivez les écrans pour vous connecter à votre
abonnement et service Azure.
Pour plus d’informations, consultez Déplacer vers le cloud avec Visual Studio et Azure .

Créer des applications web


Visual Studio peut vous aider à écrire des applications pour le web. Vous pouvez créer
des applications web à l’aide de ASP.NET, Node.js, Python, JavaScript et TypeScript.
Visual Studio prend en charge de nombreuses infrastructures web, telles que Angular,
jQuery et Express.

ASP.NET Core et .NET Core s’exécutent sur les systèmes d’exploitation Windows, Mac
et Linux. ASP.NET Core est une mise à jour majeure de MVC, WebAPI et SignalR.
ASP.NET Core est conçu dès le départ pour fournir une pile .NET allégée et composable
pour la création d’applications web modernes et de services basés sur le cloud.

Pour plus d’informations, consultez Outils web modernes .

Créer des applications et des jeux


multiplateformes
Visual Studio peut créer des applications et des jeux pour macOS, Linux et Windows, et
pour Android, iOS et d’autres appareils mobiles . Avec Visual Studio, vous pouvez
générer :
applications .NET Core qui s’exécutent sur Windows, macOS et Linux.

Applications mobiles pour iOS, Android et Windows en C# et F# à l’aide de


Xamarin .

Jeux 2D et 3D en C# à l’aide de Visual Studio Tools pour Unity.

Applications C++ natives pour les appareils iOS, Android et Windows. Partagez du
code commun dans des bibliothèques iOS, Android et Windows à l’aide de C++
pour le développement multiplateforme.

Se connecter aux bases de données


Explorateur de serveurs vous permet de parcourir et de gérer les instances et
ressources de serveur localement, à distance et sur Azure, Microsoft 365, Salesforce.com
et les sites web. Pour ouvrir l’Explorateur de serveurs, choisissez Affichage>Explorateur
de serveurs. Pour plus d’informations sur l’utilisation de l’Explorateur de serveurs,
consultez Ajouter de nouvelles connexions.

l’Explorateur d’objets SQL Server fournit une vue de vos objets de base de données,
comme SQL Server Management Studio. Avec l’Explorateur d’objets SQL Server, vous
pouvez effectuer des tâches d’administration et de conception de bases de données
légères. Par exemple, la modification des données de table, la comparaison des schémas
et l’exécution de requêtes à l’aide de menus contextuels.

Pour ouvrir l’Explorateur d’objets SQL Server, sélectionnez son icône en haut de la
fenêtre de l’Explorateur de serveurs, ou sélectionnez Affichage>l’Explorateur d’objets
SQL Server dans le menu supérieur de Visual Studio.
SQL Server Data Tools (SSDT) est un environnement de développement puissant pour
SQL Server, Azure SQL Database et Azure SQL Data Warehouse. Avec SSDT, vous pouvez
générer, déboguer, gérer et refactoriser des bases de données. Vous pouvez utiliser un
projet de base de données ou directement avec une instance de base de données
connectée sur ou hors site. Pour obtenir SSDT, utilisez le Visual Studio Installer pour
installer la charge de travail Stockage et traitement des données.

Déboguer, tester et améliorer votre code


Lorsque vous écrivez du code, vous devez l’exécuter et le tester pour les bogues et les
performances. Avec le système de débogage de Visual Studio, vous pouvez déboguer
du code s’exécutant dans votre projet local, sur un appareil distant ou sur un émulateur
d’appareil . Parcourez le code d’une instruction à la fois et inspectez les variables à
mesure que vous le souhaitez. Ou définissez des points d’arrêt qui ne sont atteints que
lorsqu’une condition spécifiée a la valeur true. Vous pouvez gérer les options de
débogage dans l’éditeur de code lui-même. Vous n’avez donc pas à quitter votre code.

Pour plus d’informations sur le débogage dans Visual Studio, consultez Premier aperçu
du débogueur.

Pour améliorer les performances de l’application, consultez la fonctionnalité de


profilagede Visual Studio.

Visual Studio propose des options de test telles que les tests unitaires, Live Unit Testing,
IntelliTest et les tests de charge et de performances. Visual Studio dispose également de
fonctionnalités avancées d’analyse de code pour rechercher la conception, la sécurité et
d’autres défauts.

Déployer votre application terminée


Visual Studio dispose d’outils pour déployer votre application sur des utilisateurs ou des
clients via le Microsoft Store, un site SharePoint ou des technologies InstallShield ou
Windows Installer. Vous pouvez accéder à toutes ces options via l’IDE Visual Studio. Pour
plus d’informations, consultez Déployer des applications, des services et des
composants.

Gérer votre code source et collaborer avec


d’autres personnes
Dans Visual Studio, vous pouvez gérer votre code source dans les dépôts Git hébergés
par n’importe quel fournisseur, y compris GitHub. Vous pouvez également rechercher un
serveur Azure DevOps pour vous connecter également.

Pour toutes les informations, consultez la page Expérience Git dans Visual Studio. Pour
obtenir un didacticiel pas à pas sur la connexion à un référentiel Git ou Azure DevOps à
l’aide de Visual Studio, consultez le Ouvrir un projet à partir d’un dépôt page.

 Conseil

Nous continuons à développer l'ensemble des fonctionnalités Git et à l'améliorer


en fonction de vos commentaires. Pour plus d’informations sur une mise à jour
récente des fonctionnalités ainsi qu’un lien vers une enquête dans laquelle vous
pouvez partager vos commentaires, consultez le billet de blog Prise en charge de
plusieurs référentiels dans Visual Studio .

Optimiser l’expérience Visual Studio sur


Microsoft Dev Box

7 Notes

Cette fonctionnalité est actuellement en préversion publique. Ces informations


concernent une fonctionnalité qui peut être sensiblement modifiée avant sa
publication. Microsoft n’offre aucune garantie, exprimée ou implicite, en ce qui
concerne les informations fournies ici.

Avec Visual Studio 17.7 Preview 3 , vous pouvez prégénérer les caches Visual Studio et
les inclure dans votre image de zone de développement. Par conséquent, Visual Studio
charge votre solution et active les fonctionnalités d’IDE clés plus rapidement dans votre
zone de développement. Vous pouvez également améliorer les performances de Git sur
les grands référentiels en activant les optimisations de graphe de validation de Git dans
les images dev box.

Étendre Visual Studio


Si Visual Studio n’a pas les fonctionnalités exactes dont vous avez besoin, vous pouvez
l’ajouter. Personnalisez l’IDE en fonction de votre flux de travail et de votre style, ajoutez
la prise en charge des outils externes qui ne sont pas intégrés à Visual Studio et
modifiez les fonctionnalités existantes pour augmenter votre productivité. Pour obtenir
la dernière version des outils d’extensibilité Visual Studio (VSSDK), consultez Kit de
développement logiciel (SDK) Visual Studio.

Vous pouvez utiliser la plateforme du compilateur .NET Roslyn pour écrire vos propres
analyseurs de code et générateurs de code. Trouvez tout ce dont vous avez besoin à
Roslyn .

Trouvez les extensions existantes pour Visual Studio créées par les développeurs de
Microsoft et la communauté de développement de Visual Studio.

Pour en savoir plus sur l’extension de Visual Studio, consultez Étendre l’IDE Visual
Studio .
Contenu connexe
Kit de développement logiciel (SDK) Visual Studio
Roslyn
vue d’ensemble de l’IDE Visual Studio
Nouveautés de Visual Studio 2017
Nouveautés de Visual Studio 2019
Nouveautés de Visual Studio 2022

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer une application console
C# simple dans Visual Studio (partie 1
sur 2)
Article • 03/02/2025

Dans ce tutoriel, vous utilisez Visual Studio pour créer et exécuter une application
console C# et explorer certaines fonctionnalités de l’environnement de développement
intégré Visual Studio (IDE). Ce tutoriel fait partie 1 d’une série de tutoriels en deux
parties.

Dans ce tutoriel, vous effectuez les tâches suivantes :

" Créez un projet Visual Studio.


" Créez une application console C#.
" Déboguer votre application.
" Fermez votre application.
" Inspectez votre code complet.

Dans partie 2 de ce didacticiel, vous étendez cette application pour ajouter d’autres
projets, découvrir des astuces de débogage et référencer des packages autres que
Microsoft.

Conditions préalables
Visual Studio doit être installé.

Si vous n'avez pas Visual Studio, allez sur Téléchargements de Visual Studio pour
l'installer gratuitement.

Créer un projet
Pour commencer, créez un projet d’application C#. Le type de projet est fourni avec tous
les fichiers de modèle dont vous avez besoin.

1. Ouvrez Visual Studio, puis sélectionnez Créer un projet dans la fenêtre de


démarrage.
2. Dans la fenêtre Créer un projet, sélectionnez C# dans la liste déroulante des
langages. Choisissez windows dans la liste des plateformes et console dans la liste
des types de projets.

Après avoir appliqué les filtres langage, plateforme et type de projet, choisissez le
modèle Application console, puis sélectionnez Suivant.

7 Notes

Si vous ne voyez pas le modèle d'application console, sélectionnez Installer


d’autres outils et fonctionnalités.

Dans Visual Studio Installer, sélectionnez la charge de travail Développement


.NET Desktop.

Sélectionnez Modifier dans Visual Studio Installer. Vous serez peut-être invité
à enregistrer votre travail. Sélectionnez Continuer pour installer la charge de
travail.

Revenez à l'étape 2 de la procédure « Créer un projet » .

3. Dans la fenêtre Configurer votre nouveau projet, tapez ou entrez Calculatrice


dans la case Nom du projet puis sélectionnez Suivant.

4. Dans la fenêtre Informations supplémentaires, sélectionnez .NET 8.0 pour le


champ Target Framework. Sélectionnez ensuite Créer.

Visual Studio ouvre votre nouveau projet, qui inclut le code par défaut Hello World. Pour
l’afficher dans l’éditeur, sélectionnez le fichier de code Program.cs dans la fenêtre
explorateur de solutions, qui se trouve généralement sur le côté droit de Visual Studio.
L’instruction de code unique appelle la méthode WriteLine pour afficher la chaîne
littérale Hello, World ! dans la fenêtre de console. Si vous appuyez sur F5, vous pouvez
exécuter le programme par défaut en mode Débogage. Une fois l’application exécutée
dans le débogueur, la fenêtre de console reste ouverte. Appuyez sur n’importe quelle
touche pour fermer la fenêtre de console.

7 Notes

À compter de .NET 6, de nouveaux projets utilisant le modèle de console génèrent


du code différent de ceux des versions précédentes. Pour plus d’informations,
consultez Les nouveaux modèles C# génèrent des instructions de niveau
supérieur.

Créer l’application
Dans cette section, vous effectuez les tâches suivantes :

Explorez des mathématiques entières de base en C#.


Ajoutez du code pour créer une application de calculatrice de base.
Déboguer l’application pour rechercher et corriger les erreurs.
Affinez le code pour le rendre plus efficace.

Explorer les mathématiques entières


Commencez par quelques mathématiques entières de base en C#.

1. Dans Explorateur de solutions, dans le volet droit, sélectionnez Program.cs pour


afficher le fichier dans l’éditeur de code.

2. Dans l’éditeur de code, remplacez le code par défaut Hello World qui indique
Console.WriteLine("Hello World!"); .
Remplacez la ligne par le code suivant :

C#

int a = 42;
int b = 119;
int c = a + b;
Console.WriteLine(c);
Console.ReadKey();

Si vous entrez le code, la fonctionnalité Visual Studio IntelliSense vous offre la


possibilité de saisir automatiquement l’entrée.
3. Pour générer et exécuter votre application, appuyez sur F5, ou sélectionnez la
flèche verte en regard du nom Calculatrice dans la barre d’outils supérieure.

Une fenêtre de console s’ouvre qui affiche la somme de 42 + 119, qui est 161.

4. Fermez la fenêtre de console.

5. (facultatif) Vous pouvez modifier l’opérateur pour modifier le résultat. Par


exemple, vous pouvez modifier l’opérateur de + dans la ligne de code int c = a +
b; en - pour la soustraction, * pour la multiplication ou / pour la division.

Lorsque vous exécutez l’application, le résultat change en conséquence.

Ajouter du code pour créer une calculatrice


Continuez en ajoutant un ensemble plus complexe de code de calculatrice à votre
projet.

1. Dans l’éditeur de code, remplacez tout le code dans Program.cs par le nouveau
code suivant :

C#

// Declare variables and then initialize to zero.


int num1 = 0; int num2 = 0;

// Display title as the C# console calculator app.


Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

// Ask the user to type the first number.


Console.WriteLine("Type a number, and then press Enter");
num1 = Convert.ToInt32(Console.ReadLine());

// Ask the user to type the second number.


Console.WriteLine("Type another number, and then press Enter");
num2 = Convert.ToInt32(Console.ReadLine());

// Ask the user to choose an option.


Console.WriteLine("Choose an option from the following list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

// Use a switch statement to do the math.


switch (Console.ReadLine())
{
case "a":
Console.WriteLine($"Your result: {num1} + {num2} = " +
(num1 + num2));
break;
case "s":
Console.WriteLine($"Your result: {num1} - {num2} = " +
(num1 - num2));
break;
case "m":
Console.WriteLine($"Your result: {num1} * {num2} = " +
(num1 * num2));
break;
case "d":
Console.WriteLine($"Your result: {num1} / {num2} = " +
(num1 / num2));
break;
}
// Wait for the user to respond before closing.
Console.Write("Press any key to close the Calculator console
app...");
Console.ReadKey();

2. Sélectionnez le bouton Calculatrice ou appuyez sur F5 pour exécuter votre


application.

Une fenêtre de console s’ouvre.

3. Dans la fenêtre de console, suivez les invites pour ajouter les nombres 42 et 119
ensemble.

Votre application doit ressembler à la capture d’écran suivante :


Ajouter des fonctionnalités décimales
Maintenant, ajustez le code pour ajouter d’autres fonctionnalités.

L’application calculatrice actuelle accepte et retourne uniquement des nombres entiers.


Par exemple, si vous exécutez l’application et divisez le nombre 42 par le nombre 119,
votre résultat est égal à zéro, ce qui n’est pas exact.

Pour corriger le code pour améliorer la précision en gérant les décimales :

1. À partir de Program.cs dans l’éditeur Visual Studio, appuyez sur Ctrl+H pour ouvrir
le contrôle Rechercher et remplacer.

2. Tapez int dans le contrôle et tapez float dans le champ Remplacer.

3. Sélectionnez les icônes Correspondant à la casse et au mot entier dans le


contrôle, ou appuyez sur Alt+C et Alt+W.
4. Sélectionnez l’icône Tout remplacer ou appuyez sur Alt+A pour exécuter la
recherche et le remplacement.

5. Réexécutez votre application de calculatrice et divisez le nombre 42 par le nombre


119.

L’application retourne maintenant un nombre décimal au lieu de zéro.

À présent, l’application peut produire des résultats décimaux. Apportez quelques


ajustements supplémentaires au code afin que l’application puisse également
calculer les décimales.

6. Utilisez le contrôle rechercher et remplacer pour modifier chaque instance de la


variable float en double et pour modifier chaque instance de la méthode
Convert.ToInt32 en Convert.ToDouble .

7. Exécutez votre application de calculatrice et divisez le nombre 42,5 par le nombre


119,75.

L’application accepte désormais les valeurs décimales et retourne un chiffre


décimal plus long en conséquence.
Dans la section Réviser le code, vous réduisez le nombre de décimales dans les
résultats.

Déboguer l’application
Vous avez amélioré votre application de calculatrice de base, mais votre application ne
gère pas encore les exceptions, telles que les erreurs d’entrée utilisateur. Par exemple, si
les utilisateurs essaient de diviser par zéro ou d’entrer un caractère inattendu,
l’application peut cesser de fonctionner, retourner une erreur ou retourner un résultat
non numérique inattendu.

Examinons quelques erreurs courantes d’entrée utilisateur, localisons-les dans le


débogueur s’ils y apparaissent et corrigez-les dans le code.

 Conseil

Pour plus d’informations sur le débogueur et son fonctionnement, consultez


Premier aperçu du débogueur Visual Studio.

Corriger l'erreur de division par zéro


Si vous essayez de diviser un nombre par zéro, l’application console peut se figer, puis
vous montre ce qui se passe mal dans l’éditeur de code.
7 Notes

Parfois, l’application ne se fige pas, et le débogueur n’affiche pas d’erreur de


division par zéro. Au lieu de cela, l’application peut retourner un résultat non
numérique inattendu, tel qu’un symbole infini. Le correctif de code suivant
s’applique toujours.

Nous allons modifier le code pour gérer cette erreur. Dans Program.cs, remplacez le
code pour case "d": par le code suivant :

C#

// Ask the user to enter a non-zero divisor until they do so.


while (num2 == 0)
{
Console.WriteLine("Enter a non-zero divisor: ");
num2 = Convert.ToDouble(Console.ReadLine());
}
Console.WriteLine($"Your result: {num1} / {num2} = " + (num1
/ num2));
break;

Après avoir remplacé le code, la section par l’instruction switch doit ressembler à la
capture d’écran suivante :
Maintenant, lorsque vous divisez un nombre par zéro, l’application demande un autre
nombre et continue de demander jusqu’à ce que vous fournissez un nombre différent
de zéro.

Corriger l'erreur de format


Si vous entrez un caractère alphabétique lorsque l’application attend un caractère
numérique, l’application se fige. Visual Studio vous montre ce qui est incorrect dans
l’éditeur de code.
Pour éviter cette exception, vous pouvez refactoriser le code que vous avez entré
précédemment.

Réviser le code
Au lieu de vous appuyer sur la classe program pour gérer tout le code, vous pouvez
diviser votre application en deux classes : Calculator et Program .

La classe Calculator gère la majeure partie du travail de calcul, et la classe Program gère
l’interface utilisateur et le travail de gestion des erreurs.

Commençons.

1. Dans Program.cs, supprimez tout et ajoutez la nouvelle classe Calculator suivante


:

C#

class Calculator
{
public static double DoOperation(double num1, double num2, string
op)
{
double result = double.NaN; // Default value is "not-a-number"
if an operation, such as division, could result in an error.

// Use a switch statement to do the math.


switch (op)
{
case "a":
result = num1 + num2;
break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}

2. Ajoutez également une nouvelle classe Program , comme suit :

C#

class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

while (!endApp)
{
// Declare variables and set to empty.
// Use Nullable types (with ?) to match type of
System.Console.ReadLine
string? numInput1 = "";
string? numInput2 = "";
double result = 0;

// Ask the user to type the first number.


Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();

double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter a
numeric value: ");
numInput1 = Console.ReadLine();
}

// Ask the user to type the second number.


Console.Write("Type another number, and then press Enter:
");
numInput2 = Console.ReadLine();

double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter a
numeric value: ");
numInput2 = Console.ReadLine();
}

// Ask the user to choose an operator.


Console.WriteLine("Choose an operator from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

string? op = Console.ReadLine();

// Validate input is not null, and matches the pattern


if (op == null || ! Regex.IsMatch(op, "[a|s|m|d]"))
{
Console.WriteLine("Error: Unrecognized input.");
}
else
{
try
{
result = Calculator.DoOperation(cleanNum1, cleanNum2,
op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in a
mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n",
result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred
trying to do the math.\n - Details: " + e.Message);
}
}
Console.WriteLine("------------------------\n");

// Wait for the user to respond before closing.


Console.Write("Press 'n' and Enter to close the app, or
press any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;

Console.WriteLine("\n"); // Friendly linespacing.


}
return;
}
}

7 Notes

Il est préférable d’utiliser des types nullables (avec le symbole ? ) pour les
chaînes d’entrée, car System.Console.ReadLine retourne un type de référence
nullable .

3. Sélectionnez le bouton Calculatrice ou appuyez sur F5 pour exécuter votre


application.

4. Suivez les instructions et divisez le nombre 42 par le nombre 119. Vos résultats
doivent ressembler à la capture d’écran suivante :

Vous pouvez maintenant exécuter davantage de calculs jusqu’à ce que vous


choisissiez de fermer l’application console. Il y a également moins de décimales
dans les résultats. Et si vous entrez un caractère incorrect, vous obtenez une
réponse d’erreur appropriée.

Fermer l’application
1. Si ce n’est déjà fait, fermez l’application Calculatrice.

2. Fermez la fenêtre Sortie dans Visual Studio.


3. Dans Visual Studio, appuyez sur Ctrl+S pour enregistrer votre application.

Ajouter un contrôle de code source Git


Maintenant que vous disposez d’une application, vous pouvez l’ajouter à un dépôt Git.
Visual Studio facilite ce processus avec les outils Git que vous pouvez utiliser
directement à partir de l’IDE.

 Conseil

Git est le système de contrôle de version moderne le plus utilisé. Que vous soyez
développeur professionnel ou que vous appreniez à coder, Git peut être très utile.
Si vous débutez avec Git, le site web https://git-scm.com/ est un bon point de
départ. Vous trouverez des feuilles de triche, un livre en ligne populaire et des
vidéos Git Basics.

Pour associer votre code à Git, commencez par créer un dépôt Git où se trouve votre
code :

1. Dans la barre d’état située en bas à droite de Visual Studio, sélectionnez Ajouter
au contrôle de code source, puis sélectionnez Git.

2. Dans la boîte de dialogue Créer un dépôt Git, connectez-vous à GitHub :


Le nom du référentiel est renseigné automatiquement en fonction de
l’emplacement de votre dossier. Votre nouveau référentiel est privé par défaut, ce
qui signifie que vous êtes le seul à y accéder.

 Conseil

Que votre référentiel soit public ou privé, il est préférable d’avoir une
sauvegarde à distance de votre code stockée en toute sécurité sur GitHub.
Même si vous ne travaillez pas avec une équipe, un référentiel distant met
votre code à votre disposition à partir d’un ordinateur.

3. Sélectionnez Créer et envoyer (push). Après avoir créé votre référentiel, vous
voyez les détails de l’état dans la barre d’état :

Utiliser des actions Git dans Visual Studio


Voici un bref résumé des actions Git disponibles dans la barre d’état de Visual Studio :
Les flèches Haut/Bas indiquent le nombre de validations sortantes/entrantes dans
votre canal actuel. Vous pouvez utiliser cette icône pour extraire les validations
entrantes ou envoyer (push) des validations sortantes.

Pour afficher une validation spécifique, sélectionnez la flèche Haut/Bas, puis


Afficher les validations sortantes/entrantes.

Le crayon indique le nombre de modifications non validées dans votre code. Vous
pouvez sélectionner cette icône pour afficher ces modifications dans la fenêtre
Modifications Git.

Le menu Git fournit des outils pour les actions de dépôt sur vos fichiers. Vous pouvez
utiliser git fetch, pull, push et sync pour le contrôle de version dans Visual Studio.

Pour plus d’informations sur l’utilisation de Git avec votre application, consultez À
propos de Git dans Visual Studio.

Révision : Code terminé


Dans ce tutoriel, vous avez apporté de nombreuses modifications à l’application
Calculatrice. L’application gère désormais plus efficacement les ressources informatiques
et gère la plupart des erreurs d’entrée utilisateur.

Voici le code complet, à un seul endroit :

C#

class Calculator
{
public static double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number" which
we use if an operation, such as division, could result in an error.

// Use a switch statement to do the math.


switch (op)
{
case "a":
result = num1 + num2;
break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}

class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

while (!endApp)
{
// Declare variables and set to empty.
// Use Nullable types (with ?) to match type of
System.Console.ReadLine
string? numInput1 = "";
string? numInput2 = "";
double result = 0;

// Ask the user to type the first number.


Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();

double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter a
numeric value: ");
numInput1 = Console.ReadLine();
}

// Ask the user to type the second number.


Console.Write("Type another number, and then press Enter: ");
numInput2 = Console.ReadLine();

double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter a
numeric value: ");
numInput2 = Console.ReadLine();
}
// Ask the user to choose an operator.
Console.WriteLine("Choose an operator from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

string? op = Console.ReadLine();

// Validate input is not null, and matches the pattern


if (op == null || ! Regex.IsMatch(op, "[a|s|m|d]"))
{
Console.WriteLine("Error: Unrecognized input.");
}
else
{
try
{
result = Calculator.DoOperation(cleanNum1, cleanNum2,
op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in a
mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n",
result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred trying
to do the math.\n - Details: " + e.Message);
}
}
Console.WriteLine("------------------------\n");

// Wait for the user to respond before closing.


Console.Write("Press 'n' and Enter to close the app, or press
any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;

Console.WriteLine("\n"); // Friendly linespacing.


}
return;
}
}

Étape suivante
Poursuivez avec la deuxième partie de ce didacticiel :

Partie 2 : Étendre et déboguer votre application console C#

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Étendre l’application console
C# et déboguer dans Visual Studio
(partie 2 sur 2)
Article • 03/02/2025

Dans la partie 2 de cette série de tutoriels, vous explorez un peu plus en détail les
fonctionnalités de génération et de débogage de Visual Studio dont vous avez besoin
pour le développement quotidien. Ces fonctionnalités incluent la gestion de plusieurs
projets, le débogage et le référencement de packages tiers. Vous exécutez l’application
console C# que vous avez créée dans partie 1 de ce didacticielet explorez certaines
fonctionnalités de l’environnement de développement intégré (IDE) Visual Studio. Ce
tutoriel fait partie 2 d’une série de tutoriels en deux parties.

Dans ce tutoriel, vous effectuez les tâches suivantes :

" Ajoutez un deuxième projet.


" Bibliothèques de référence et ajout de packages.
" Déboguez votre code.
" Vérifiez votre code complété.

Conditions préalables
Pour parcourir cet article, vous pouvez utiliser l’une des applications de calculatrice
suivantes :

L’application console calculatrice de la partie 1 de ce tutoriel.


Application calculatrice C# dans le référentiel vs-tutorial-samples . Pour
commencer, ouvrir l’application à partir du dépôt.

Ajouter un autre projet


Le code réel implique des projets travaillant ensemble dans une solution. Vous pouvez
ajouter un projet de bibliothèque de classes à votre application de calculatrice qui
fournit certaines fonctions de calculatrice.

Dans Visual Studio, vous utilisez la commande de menu Fichier>Ajouter>nouveau


projet pour ajouter un nouveau projet. Vous pouvez également cliquer avec le bouton
droit sur la solution dans Explorateur de solutions pour ajouter un projet à partir du
menu contextuel.
1. Dans Explorateur de solutions, cliquez avec le bouton droit sur le nœud de
solution et choisissez Ajouter>nouveau projet.

2. Dans la fenêtre Ajouter un nouveau projet, tapez bibliothèque de classes dans la


zone de recherche. Choisissez le modèle de projet Bibliothèque de classes C#,
puis sélectionnez Suivant.

3. Sur l'écran Configurer votre nouveau projet, tapez le nom du projet


CalculatorLibrary, puis sélectionnez Suivant.

4. Dans l’écran Informations supplémentaires, .NET 8.0 est sélectionné. Sélectionnez


Créer.

Visual Studio crée le projet et l’ajoute à la solution.


5. Renommez le fichier Class1.cs en CalculatorLibrary.cs. Pour renommer le fichier,
vous pouvez cliquer avec le bouton droit sur le nom dans Explorateur de solutions
et choisir Renommer, sélectionner le nom et appuyer sur F2, ou sélectionner à
nouveau le nom et sélectionner à nouveau pour taper.

Un message peut vous demander si vous souhaitez renommer toutes les


références à Class1 dans le fichier. Peu importe comment vous répondez, car vous
remplacerez le code dans une étape future.

6. Ajoutez maintenant une référence de projet, afin que le premier projet puisse
utiliser des API que la nouvelle bibliothèque de classes expose. Cliquez avec le
bouton droit sur le nœud Dépendances dans le projet Calculatrice et choisissez
Ajouter une référence de projet.
La boîte de dialogue Gestionnaire de références s’affiche. Dans cette boîte de
dialogue, vous pouvez ajouter des références à d’autres projets, assemblys et DLL
COM dont vos projets ont besoin.

7. Dans la boîte de dialogue gestionnaire de références, cochez la case du projet


CalculatorLibrary, puis sélectionnez OK.

La référence de projet apparaît sous un nœud Projets dans l’Explorateur de


solutions.
8. Dans Program.cs, sélectionnez la classe Calculator et tout son code, puis appuyez
sur Ctrl+X pour la couper. Ensuite, dans CalculatorLibrary.cs, collez le code dans
l’espace de noms CalculatorLibrary .

Ajoutez également public avant la classe Calculator pour l’exposer en dehors de la


bibliothèque.

CalculatorLibrary.cs doit maintenant ressembler au code suivant :

C#

// CalculatorLibrary.cs
namespace CalculatorLibrary
{
public class Calculator
{
public static double DoOperation(double num1, double num2,
string op)
{
double result = double.NaN; // Default value is "not-a-
number" if an operation, such as division, could result in an error.

// Use a switch statement to do the math.


switch (op)
{
case "a":
result = num1 + num2;
break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}
}

9. Program.cs a également une référence, mais une erreur indique que l’appel
Calculator.DoOperation ne se résout pas. L’erreur est due au fait que

CalculatorLibrary se trouve dans un espace de noms différent. Pour obtenir une


référence complète, vous pouvez ajouter l’espace de noms CalculatorLibrary au
Calculator.DoOperation appel dans Program.cs :

C#

// Program.cs
result = CalculatorLibrary.Calculator.DoOperation(cleanNum1, cleanNum2,
op);

Vous pouvez également essayer d’ajouter une directive using au début du fichier
Program.cs :

C#

// Program.cs
using CalculatorLibrary;

L’ajout de la directive using doit vous permettre de supprimer l’espace de noms


CalculatorLibrary du site d’appel.

Si votre code Program.cs se trouve dans l’espace de noms Calculator , renommez


l’espace de noms de Calculator pour CalculatorProgram pour supprimer
l’ambiguïté entre le nom de la classe et le nom de l’espace de noms.

Référencer les bibliothèques .NET : écrire dans


un journal
Vous pouvez utiliser la classe .NET Trace pour ajouter un journal de toutes les opérations
et l’écrire dans un fichier texte. La classe Trace est également utile pour les techniques
de débogage d’impression de base. La classe Trace se trouve dans
System.Diagnostics et utilise des classes System.IO comme StreamWriter .

1. Commencez par ajouter les directives using en haut de CalculatorLibrary.cs:

C#

// CalculatorLibrary.cs
using System.Diagnostics;

2. Cette utilisation de la classe Trace doit contenir une référence pour la classe,
qu’elle associe à un flux de fichiers. Cette exigence signifie que la calculatrice
fonctionne mieux en tant qu’objet, donc ajouter un constructeur au début de la
classe Calculator dans CalculatorLibrary.cs.

Supprimez également le mot clé static pour modifier la méthode de DoOperation


statique en méthode membre.

C#

// CalculatorLibrary.cs
public Calculator()
{
StreamWriter logFile = File.CreateText("calculator.log");
Trace.Listeners.Add(new TextWriterTraceListener(logFile));
Trace.AutoFlush = true;
Trace.WriteLine("Starting Calculator Log");
Trace.WriteLine(String.Format("Started {0}",
System.DateTime.Now.ToString()));
}

public double DoOperation(double num1, double num2, string op)


{

3. Ajoutez la sortie du journal à chaque calcul. DoOperation doit maintenant


ressembler au code suivant :
C#

// CalculatorLibrary.cs
public double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number" if
an operation, such as division, could result in an error.

// Use a switch statement to do the math.


switch (op)
{
case "a":
result = num1 + num2;
Trace.WriteLine(String.Format("{0} + {1} = {2}", num1,
num2, result));
break;
case "s":
result = num1 - num2;
Trace.WriteLine(String.Format("{0} - {1} = {2}", num1,
num2, result));
break;
case "m":
result = num1 * num2;
Trace.WriteLine(String.Format("{0} * {1} = {2}", num1,
num2, result));
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
Trace.WriteLine(String.Format("{0} / {1} = {2}", num1,
num2, result));
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}

4. Dans Program.cs, un trait de soulignement rouge marque maintenant l’appel


statique. Pour corriger l’erreur, créez une variable calculator en ajoutant la ligne
de code suivante juste avant la boucle while (!endApp) :

C#

// Program.cs
Calculator calculator = new Calculator();
Modifiez également le site d’appel DoOperation pour référencer l’objet nommé
calculator en minuscules. Le code est maintenant un appel de membre, plutôt

qu’un appel à une méthode statique.

C#

// Program.cs
result = calculator.DoOperation(cleanNum1, cleanNum2, op);

5. Réexécutez l’application. Lorsque vous avez terminé, cliquez avec le bouton droit
sur le nœud du projet Calculator, puis choisissez Ouvrir le dossier dans
l’Explorateur de fichiers.

6. Dans l’Explorateur de fichiers, accédez au dossier de sortie sous bin/Debug/, puis


ouvrez le fichier calculator.log. La sortie doit ressembler à ceci :

Output

Starting Calculator Log


Started 7/9/2020 1:58:19 PM
1 + 2 = 3
3 * 3 = 9

À ce stade, CalculatorLibrary.cs doit ressembler à ce code :

C#

// CalculatorLibrary.cs
using System.Diagnostics;

namespace CalculatorLibrary
{
public class Calculator
{

public Calculator()
{
StreamWriter logFile = File.CreateText("calculator.log");
Trace.Listeners.Add(new TextWriterTraceListener(logFile));
Trace.AutoFlush = true;
Trace.WriteLine("Starting Calculator Log");
Trace.WriteLine(String.Format("Started {0}",
System.DateTime.Now.ToString()));
}

public double DoOperation(double num1, double num2, string op)


{
double result = double.NaN; // Default value is "not-a-number"
if an operation, such as division, could result in an error.
// Use a switch statement to do the math.
switch (op)
{
case "a":
result = num1 + num2;
Trace.WriteLine(String.Format("{0} + {1} = {2}", num1,
num2, result));
break;
case "s":
result = num1 - num2;
Trace.WriteLine(String.Format("{0} - {1} = {2}", num1,
num2, result));
break;
case "m":
result = num1 * num2;
Trace.WriteLine(String.Format("{0} * {1} = {2}", num1,
num2, result));
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
Trace.WriteLine(String.Format("{0} / {1} = {2}",
num1, num2, result));
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}
}

Program.cs doit ressembler au code suivant :

C#

// Program.cs
using CalculatorLibrary;

namespace CalculatorProgram
{

class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

Calculator calculator = new Calculator();


while (!endApp)
{
// Declare variables and set to empty.
// Use Nullable types (with ?) to match type of
System.Console.ReadLine
string? numInput1 = "";
string? numInput2 = "";
double result = 0;

// Ask the user to type the first number.


Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();

double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput1 = Console.ReadLine();
}

// Ask the user to type the second number.


Console.Write("Type another number, and then press Enter:
");
numInput2 = Console.ReadLine();

double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput2 = Console.ReadLine();
}

// Ask the user to choose an operator.


Console.WriteLine("Choose an operator from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

string? op = Console.ReadLine();

// Validate input is not null, and matches the pattern


if (op == null || ! Regex.IsMatch(op, "[a|s|m|d]"))
{
Console.WriteLine("Error: Unrecognized input.");
}
else
{
try
{
result = calculator.DoOperation(cleanNum1, cleanNum2,
op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in
a mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n",
result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred
trying to do the math.\n - Details: " + e.Message);
}
}
Console.WriteLine("------------------------\n");

// Wait for the user to respond before closing.


Console.Write("Press 'n' and Enter to close the app, or
press any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;

Console.WriteLine("\n"); // Friendly linespacing.


}
return;
}
}
}

Ajouter un package NuGet : écrire dans un


fichier JSON
Pour générer des opérations au format JSON, un format populaire et portable pour le
stockage des données d’objet, vous pouvez référencer le package NuGet
Newtonsoft.Json. Les packages NuGet sont la méthode de distribution principale pour les
bibliothèques de classes .NET.

1. Dans Explorateur de solutions, cliquez avec le bouton droit sur le nœud


Dépendances du projet CalculatorLibrary, puis choisissez Gérer les packages
NuGet.
Le Gestionnaire de package NuGet s’ouvre.

2. Recherchez et sélectionnez le package Newtonsoft.Json, puis sélectionnez Installer.


Si vous êtes invité à accepter les modifications, sélectionnez OK.

Visual Studio télécharge le package et l’ajoute au projet. Une nouvelle entrée


apparaît dans un nœud Packages dans l’Explorateur de solutions .

Ajoutez une directive using pour Newtonsoft.Json au début de


CalculatorLibrary.cs.

C#

// CalculatorLibrary.cs
using Newtonsoft.Json;

3. Créez l’objet membre JsonWriter et remplacez le constructeur Calculator par le


code suivant :

C#

// CalculatorLibrary.cs
JsonWriter writer;

public Calculator()
{
StreamWriter logFile = File.CreateText("calculatorlog.json");
logFile.AutoFlush = true;
writer = new JsonTextWriter(logFile);
writer.Formatting = Formatting.Indented;
writer.WriteStartObject();
writer.WritePropertyName("Operations");
writer.WriteStartArray();
}

4. Modifiez la méthode DoOperation pour ajouter le code writer JSON :

C#

// CalculatorLibrary.cs
public double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number"
if an operation, such as division, could result in an error.
writer.WriteStartObject();
writer.WritePropertyName("Operand1");
writer.WriteValue(num1);
writer.WritePropertyName("Operand2");
writer.WriteValue(num2);
writer.WritePropertyName("Operation");
// Use a switch statement to do the math.
switch (op)
{
case "a":
result = num1 + num2;
writer.WriteValue("Add");
break;
case "s":
result = num1 - num2;
writer.WriteValue("Subtract");
break;
case "m":
result = num1 * num2;
writer.WriteValue("Multiply");
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
writer.WriteValue("Divide");
break;
// Return text for an incorrect option entry.
default:
break;
}
writer.WritePropertyName("Result");
writer.WriteValue(result);
writer.WriteEndObject();
return result;
}

5. Ajoutez une méthode pour terminer la syntaxe JSON une fois que l’utilisateur a
terminé d’entrer des données d’opération.

C#

// CalculatorLibrary.cs
public void Finish()
{
writer.WriteEndArray();
writer.WriteEndObject();
writer.Close();
}

6. À la fin de Program.cs, avant le return; , ajoutez un appel à Finish :

C#

// Program.cs
// Add call to close the JSON writer before return
calculator.Finish();
return;
}

7. Générez et exécutez l’application, puis une fois que vous avez terminé d’entrer
quelques opérations, fermez l’application en entrant la commande n.

8. Ouvrez le fichier calculatorlog.json dans l’Explorateur de fichiers. Vous devez voir


quelque chose comme le contenu suivant :

JSON

{
"Operations": [
{
"Operand1": 2.0,
"Operand2": 3.0,
"Operation": "Add",
"Result": 5.0
},
{
"Operand1": 3.0,
"Operand2": 4.0,
"Operation": "Multiply",
"Result": 12.0
}
]
}

Débogage : Définir et atteindre un point d’arrêt


Le débogueur Visual Studio est un outil puissant. Le débogueur peut parcourir votre
code pour trouver le point exact où il y a une erreur de programmation. Vous pouvez
ensuite comprendre les corrections que vous devez apporter et apporter des
modifications temporaires afin de continuer à exécuter votre application.

1. Dans Program.cs, cliquez dans la marge à gauche de la ligne de code suivante.


Vous pouvez également cliquer sur la ligne et sélectionner F9, ou cliquer avec le
bouton droit sur la ligne et sélectionner point d’arrêt>Insérer un point d’arrêt.

C#

// Program.cs
result = calculator.DoOperation(cleanNum1, cleanNum2, op);

Le point rouge qui s’affiche indique un point d’arrêt. Vous pouvez utiliser des
points d’arrêt pour suspendre votre application et inspecter le code. Vous pouvez
définir un point d’arrêt sur n’importe quelle ligne de code exécutable.

2. Générez et exécutez l’application. Entrez les valeurs suivantes pour le calcul :

Pour le premier nombre, entrez 8.


Pour le deuxième nombre, entrez 0.
Pour l’opérateur, amusons-nous un peu. Entrez d.

L’application suspend l’emplacement où vous avez créé le point d’arrêt, qui est
indiqué par le pointeur jaune à gauche et le code mis en surbrillance. Le code mis
en surbrillance n’a pas encore été exécuté.
capture d’écran d’un point d’arrêt atteint

Maintenant, avec l’application suspendue, vous pouvez inspecter l’état de votre


application.

Déboguer : Afficher les variables


1. Dans le code mis en surbrillance, pointez sur des variables telles que cleanNum1 et
op . Les valeurs actuelles de ces variables, 8 et d respectivement, apparaissent

dans les Info-bulles de données.

Lorsque vous déboguez, vérifier si les variables contiennent les valeurs attendues
est souvent essentiel pour résoudre les problèmes.

2. Dans le volet inférieur, examinez la fenêtre Locals. S’il est fermé, sélectionnez
Débogage>Fenêtres>Variables locales pour l’ouvrir.

La fenêtre Locals affiche chaque variable actuellement dans le champ de portée,


ainsi que sa valeur et son type.

3. Regardez la fenêtre Autos.


La fenêtre Autos est similaire à la fenêtre Locals, mais affiche les variables
immédiatement précédentes et suivant la ligne de code actuelle où votre
application est suspendue.

7 Notes

Si la fenêtre Autos ne s’affiche pas, sélectionnez Déboguer>Windows>Autos


pour l’ouvrir.

Ensuite, exécutez du code dans le débogueur une instruction à la fois ; c’est ce qu’on
appelle le pas à pas.

Débogage : Pas à pas détaillé du code


1. Appuyez sur F11 ou sélectionnez Débogage>Pas à pas.

À l’aide de la commande Pas à pas détaillé, l’application exécute l’instruction


actuelle et passe à l’instruction exécutable suivante, généralement la ligne de code
suivante. Le pointeur jaune à gauche indique toujours l’instruction actuelle.

Capture d’écran

Vous venez d’entrer dans la méthode DoOperation dans la classe Calculator .

2. Pour obtenir un aperçu hiérarchique de votre flux de programme, observez la


fenêtre Pile des appels. Si elle est fermée, sélectionnez Débogage>Fenêtres>Pile
des appels pour l’ouvrir.

Capture d’écran de la pile d'appels

Cette vue affiche la méthode Calculator.DoOperation actuelle, indiquée par le


pointeur jaune. La deuxième ligne montre la fonction qui a appelé la méthode, à
partir de la méthode Main dans Program.cs.
La fenêtre pile des appels affiche l’ordre dans lequel les méthodes et les fonctions
sont appelées. Cette fenêtre permet également d’accéder à de nombreuses
fonctionnalités du débogueur, telles que Accéder au code source, à partir de son
menu contextuel.

3. Appuyez sur F10 ou sélectionnez Débogage>Pas à pas jusqu’à ce que l’application


s’arrête sur l’instruction switch .

C#

// CalculatorLibrary.cs
switch (op)
{

La commande Pas à pas principal est similaire à la commande Pas à pas détaillé,
sauf que si l’instruction actuelle appelle une fonction, le débogueur exécute le
code dans la fonction et n’interrompt pas l’exécution tant que la fonction n’est pas
retournée. Pas à pas principal est plus rapide que Pas à pas détaillé si vous n’êtes
pas intéressé par une fonction particulière.

4. Appuyez sur F10 une fois de plus, afin que l’application s’interrompt sur la ligne de
code suivante.

C#

// CalculatorLibrary.cs
if (num2 != 0)
{

Ce code recherche un cas de division par zéro. Si l’application continue, elle génère
une exception générale (une erreur). Vous pourriez cependant essayer autre chose,
comme afficher dans la console la valeur effectivement retournée. Une option
consiste à utiliser une fonctionnalité de débogueur appelée Modifier et Continuer
pour apporter des modifications au code, puis poursuivre le débogage. Toutefois, il
existe une autre astuce pour modifier temporairement le flux d’exécution.

Déboguer : tester une modification temporaire


1. Sélectionnez le pointeur jaune, actuellement suspendu sur l’instruction if (num2
!= 0) , puis faites-le glisser vers l’instruction suivante :

C#
// CalculatorLibrary.cs
result = num1 / num2;

En faisant glisser le pointeur ici, l’application ignore complètement l’instruction if .


Vous pouvez donc voir ce qui se passe lorsque vous divisez par zéro.

2. Appuyez sur F10 pour exécuter la ligne de code.

3. Si vous pointez sur la variable result , elle affiche une valeur de Infini. En C#,
l’infini est le résultat lorsque vous divisez par zéro.

4. Appuyez sur F5 ou sélectionnez Déboguer>Continuer le débogage.

Le symbole infini apparaît dans la console en raison de l’opération mathématique.

5. Fermez l’application correctement en entrant la commande n.

Code complet
Voici le code complet du fichier CalculatorLibrary.cs, après avoir effectué toutes les
étapes :

C#

// CalculatorLibrary.cs
using Newtonsoft.Json;

namespace CalculatorLibrary
{
public class Calculator
{

JsonWriter writer;

public Calculator()
{
StreamWriter logFile = File.CreateText("calculatorlog.json");
logFile.AutoFlush = true;
writer = new JsonTextWriter(logFile);
writer.Formatting = Formatting.Indented;
writer.WriteStartObject();
writer.WritePropertyName("Operations");
writer.WriteStartArray();
}

public double DoOperation(double num1, double num2, string op)


{
double result = double.NaN; // Default value is "not-a-number"
if an operation, such as division, could result in an error.
writer.WriteStartObject();
writer.WritePropertyName("Operand1");
writer.WriteValue(num1);
writer.WritePropertyName("Operand2");
writer.WriteValue(num2);
writer.WritePropertyName("Operation");
// Use a switch statement to do the math.
switch (op)
{
case "a":
result = num1 + num2;
writer.WriteValue("Add");
break;
case "s":
result = num1 - num2;
writer.WriteValue("Subtract");
break;
case "m":
result = num1 * num2;
writer.WriteValue("Multiply");
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
writer.WriteValue("Divide");
break;
// Return text for an incorrect option entry.
default:
break;
}
writer.WritePropertyName("Result");
writer.WriteValue(result);
writer.WriteEndObject();

return result;
}

public void Finish()


{
writer.WriteEndArray();
writer.WriteEndObject();
writer.Close();
}
}
}

Voici le code de Program.cs:

C#
// Program.cs
using CalculatorLibrary;

namespace CalculatorProgram
{

class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

Calculator calculator = new Calculator();


while (!endApp)
{
// Declare variables and set to empty.
// Use Nullable types (with ?) to match type of
System.Console.ReadLine
string? numInput1 = "";
string? numInput2 = "";
double result = 0;

// Ask the user to type the first number.


Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();

double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput1 = Console.ReadLine();
}

// Ask the user to type the second number.


Console.Write("Type another number, and then press Enter:
");
numInput2 = Console.ReadLine();

double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput2 = Console.ReadLine();
}

// Ask the user to choose an operator.


Console.WriteLine("Choose an operator from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

string? op = Console.ReadLine();

// Validate input is not null, and matches the pattern


if (op == null || ! Regex.IsMatch(op, "[a|s|m|d]"))
{
Console.WriteLine("Error: Unrecognized input.");
}
else
{
try
{
result = calculator.DoOperation(cleanNum1, cleanNum2,
op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in
a mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n",
result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred
trying to do the math.\n - Details: " + e.Message);
}
}
Console.WriteLine("------------------------\n");

// Wait for the user to respond before closing.


Console.Write("Press 'n' and Enter to close the app, or
press any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;

Console.WriteLine("\n"); // Friendly linespacing.


}
calculator.Finish();
return;
}
}
}

Étapes suivantes
Félicitations pour avoir terminé ce tutoriel ! Pour en savoir plus, poursuivez avec le
contenu suivant :
Poursuivre avec d’autres didacticiels C#
démarrage rapide : Créer une application web ASP.NET Core
Apprendre à déboguer du code C# dans Visual Studio
découvrez comment créer et exécuter des tests unitaires
Exécuter un programme C#
En savoir plus sur C# IntelliSense
continuer avec la vue d’ensemble de l’IDE Visual Studio
Journalisation et suivi

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Bien démarrer avec C# et
ASP.NET Core dans Visual Studio
Article • 30/01/2025

Dans ce tutoriel pour le développement C# avec ASP.NET Core, vous créez une
application web C# ASP.NET Core dans Visual Studio.

Ce tutoriel vous montre comment :

" Créer un projet Visual Studio


" Créer une application web C# ASP.NET Core
" Apporter des modifications à l’application web
" Explorer les fonctionnalités de l’IDE
" Exécuter l’application web

Conditions préalables
Pour suivre ce didacticiel, vous avez besoin des éléments suivants :

Visual Studio est installé. Visitez la page de téléchargements Visual Studio pour
une version gratuite. Pour plus d’informations sur la mise à niveau vers la dernière
version de Visual Studio, consultez mises à jour de Visual Studio.
La charge de travail Développement web et ASP.NET est installée. Pour vérifier ou
installer cette charge de travail dans Visual Studio, sélectionnez Tools>Obtenir des
outils et des fonctionnalités. Pour plus d’informations, consultez Modifier les
charges de travail ou les composants individuels.

Créer un projet
Tout d’abord, vous créez un projet ASP.NET Core. Le type de projet est fourni avec tous
les fichiers de modèle dont vous avez besoin pour créer un site web entièrement
fonctionnel.

1. Dans la fenêtre de démarrage, sélectionnez Créer un projet.


2. Dans la fenêtre Créer un projet, sélectionnez C# dans la liste des langues. Ensuite,
sélectionnez Windows dans la liste Toutes les plateformes et Web dans la liste
Tous les types de projets.

Une fois que vous avez appliqué les filtres de langage, de plateforme et de type de
projet, sélectionnez le modèle Application web ASP.NET Core (Razor Pages), puis
sélectionnez Suivant.


3. Dans la fenêtre Configurer votre nouveau projet, entrez MyCoreApp dans le
champ Nom du projet. Sélectionnez ensuite suivant.

4. Dans la fenêtre Informations supplémentaires, vérifiez que .NET 8.0 apparaît dans
le champ Framework cible.

Dans cette fenêtre, vous pouvez activer la prise en charge des conteneurs et
ajouter la prise en charge de l’authentification. Le menu déroulant pour type
d’authentification propose les quatre options suivantes :

Aucun: aucune authentification.


comptes individuels: ces authentifications sont stockées dans une base de
données locale ou Azure.
plateforme d’identités Microsoft: cette option utilise l’ID Microsoft Entra ou
Microsoft 365 pour l’authentification.
Windows: adapté aux applications intranet.

Laissez la case Activer la prise en charge du conteneur désactivée, puis


sélectionnez Aucun pour le type d’authentification.

5. Sélectionnez Créer.

Visual Studio ouvre votre nouveau projet.

À propos de votre solution


Cette solution suit le modèle de conception Razor Page . Il diffère du modèle de
conception modèle-vue-contrôleur (MVC) en ce qu’il est simplifié de façon à intégrer le
code du modèle et du contrôleur dans la Razor Page proprement dite.

Visite guidée de votre solution


1. Le modèle de projet crée une solution avec un seul projet ASP.NET Core nommé
MyCoreApp. Sélectionnez l’onglet de l’Explorateur de solutions pour afficher son
contenu.
2. Développez le dossier Pages.

3. Sélectionnez le fichier index.cshtml et affichez-le dans l’éditeur de code.


4. Chaque fichier .cshtml a un fichier de code associé. Pour ouvrir le fichier de code
dans l’éditeur, développez le nœud Index.cshtml dans l’Explorateur de solutions,
puis sélectionnez le fichier Index.cshtml.cs.

5. Affichez le fichier Index.cshtml.cs dans l’éditeur de code.

6. Le projet contient un dossier wwwroot, qui est la racine de votre site web.
Développez le dossier pour voir son contenu.
Vous pouvez placer du contenu de site statique tel que css, images et
bibliothèques JavaScript directement dans les chemins d’accès où vous le
souhaitez.

7. Le projet contient également des fichiers de configuration qui gèrent l’application


web au moment de l’exécution. L’application par défaut configuration est stockée
dans appsettings.json. Toutefois, vous pouvez remplacer ces paramètres à l’aide
de appsettings.Development.json. Développez le fichier appsettings.json pour
voir le fichier appsettings.Development.json.
Exécuter, déboguer et apporter des
modifications
1. Dans la barre d’outils, sélectionnez le bouton https pour générer et exécuter
l’application en mode débogage. Vous pouvez également appuyer sur F5ou
accéder à Déboguer>Démarrer le débogage à partir de la barre de menus.

7 Notes

Vous pouvez également recevoir un message qui vous demande si vous


souhaitez accepter un certificat SSL ASP.NET Core. Pour afficher le code dans
un navigateur web, sélectionnez Oui, puis Oui si vous recevez un message
d’avertissement de sécurité de suivi. En savoir plus sur l’application du
protocole SSL dans ASP.NET Core.

2. Visual Studio lance une fenêtre de navigateur. Vous devez ensuite voir les pages
d’accueil et de confidentialité dans la barre de menus.

3. Sélectionnez confidentialité dans la barre de menus. La page Confidentialité du


navigateur affiche le texte défini dans le fichier Privacy.cshtml.
4. Revenez à Visual Studio, puis appuyez sur Maj+F5 pour arrêter le débogage. Cette
action ferme le projet dans la fenêtre du navigateur.

5. Dans Visual Studio, ouvrez Privacy.cshtml pour modification. Ensuite, supprimez la


phrase Utilisez cette page pour détailler la politique de confidentialité de votre site et
la remplacer par cette page est en cours de construction à partir de
@ViewData["TimeStamp"].

6. À présent, nous allons apporter une modification de code. Sélectionnez


Privacy.cshtml.cs. Ensuite, nettoyez les directives using en haut du fichier en
sélectionnant le raccourci suivant :

Passez la souris sur une directive using grisée, ou sélectionnez-la. Une ampoule
Actions rapides apparaît juste en dessous du point d’insertion ou dans la marge de
gauche. Sélectionnez l’ampoule, puis sélectionnez la flèche d'extension à côté de
Supprimer les utilisations inutiles.

Sélectionnez maintenant Aperçu des modifications pour voir les changements.


Sélectionnez Appliquer. Visual Studio supprime les directives using inutiles du
fichier.

7. Ensuite, créez une chaîne pour la date actuelle mise en forme pour votre culture ou
région à l’aide de la méthode DateTime.ToString.

Le premier argument de la méthode spécifie la façon dont la date doit être


affichée. Cet exemple utilise le spécificateur de format ( d ) qui indique le
format de date courte.
Le deuxième argument est l’objet CultureInfo qui spécifie la culture ou la
région de la date. Le deuxième argument détermine, entre autres, la langue
des mots dans la date et le type de séparateurs utilisés.

Remplacez le corps de la méthode OnGet() dans Privacy.cshtml.cs par le code


suivant :

C#

public void OnGet()


{
string dateTime = DateTime.Now.ToString("d", new CultureInfo("en-
US"));
ViewData["TimeStamp"] = dateTime;
}

8. Notez que la directive using suivante est automatiquement ajoutée au début du


fichier :

C#

using System.Globalization;

System.Globalization contient la classe CultureInfo.

9. Appuyez sur F5 pour ouvrir votre projet dans le navigateur web.

10. En haut du site web, sélectionnez confidentialité pour afficher vos modifications.

11. Fermez le navigateur web, appuyez sur Maj+F5 pour arrêter le débogage.

Modifier votre page d’accueil


1. Dans l’Explorateur de solutions , développez le dossier Pages, puis sélectionnez
Index.cshtml.
Le fichier index.cshtml correspond à votre page Accueil dans l’application web, qui
s’exécute dans un navigateur web.

Dans l'éditeur de code, vous voyez le code HTML pour le texte qui s'affiche sur la
page d'accueil .

2. Remplacez le texte bienvenue par Hello World !


3. Sélectionnez https ou appuyez sur Ctrl+F5 pour exécuter l’application et l’ouvrir
dans un navigateur web.

4. Dans le navigateur web, vous voyez vos nouvelles modifications sur la page
d’accueil .

5. Fermez le navigateur web, appuyez sur Maj+F5 pour arrêter le débogage et


enregistrer votre projet. Vous pouvez maintenant fermer Visual Studio.

Étapes suivantes
Félicitations pour avoir terminé ce tutoriel ! Nous espérons que vous avez aimé
découvrir C#, ASP.NET Core et l’IDE Visual Studio. Pour en savoir plus sur la création
d’une application web ou d’un site web avec C# et ASP.NET, suivez le tutoriel suivant :

Créer une application web Razor Pages avec ASP.NET Core

Vous pouvez également apprendre à conteneuriser votre application web avec Docker :

Outils de conteneur dans Visual Studio


Liens connexes
publier votre application web sur Azure App Service à l’aide de Visual Studio
Personnaliser l’IDE et l’éditeur Visual Studio

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer votre première
application du Kit de développement
logiciel (SDK) d’application Windows
dans Visual Studio avec XAML et C#
Article • 03/02/2025

Dans cette introduction à l’environnement de développement intégré (IDE) de Visual


Studio, vous allez créer une application « Hello World » qui s’exécute sur n’importe quel
appareil Windows 10 ou version ultérieure. Pour ce faire, vous allez utiliser un modèle de
projet Windows App SDK (WinUI 3), un langage XAML (Extensible Application Markup
Language) et le langage de programmation C#.

7 Notes

WinUI 3 est le composant de plateforme d'interface utilisateur natif fourni avec le


Windows App SDK (complètement découplé des SDK Windows ). Pour plus
d’informations, consultez WinUI 3 .

Si vous n’avez pas encore installé Visual Studio, accédez à la page de téléchargement de
Visual Studio pour l'installer gratuitement.

Conditions préalables
Vous avez besoin de Visual Studio pour suivre ce didacticiel. Visitez la page de
téléchargements Visual Studio pour une version gratuite.

Charges de travail et composants requis pour le développement avec WinUI et le


Kit de développement logiciel (SDK) d’application Windows. Pour vérifier ou
installer une charge de travail dans Visual Studio, sélectionnez Tools>Obtenir des
outils et des fonctionnalités. Pour plus d’informations, consultez Modifier les
charges de travail ou les composants individuels.

Sous l’onglet Charges de travail du programme d’installation de Visual Studio,


sélectionnez les charges de travail et les composants suivants :

Visual Studio 2022 version 17.10 et ultérieure


Pour le développement d'applications C# à l'aide du Kit de développement
logiciel (SDK) pour applications Windows, sélectionnez Développement
d'applications Windows.

Créer un projet
Tout d’abord, créez un projet WinUI 3. Le type de projet est fourni avec tous les fichiers
de modèle dont vous avez besoin, avant même d’avoir ajouté quoi que ce soit !

1. Ouvrez Visual Studio et, dans la fenêtre de démarrage, choisissez Créer un projet.

2. Sur l’écran Créer un nouveau projet, entrez WinUI dans la zone de recherche,
choisissez le modèle C# pour Application vide (WinUI 3 dans le Bureau), puis
choisissez Suivant.

3. Donnez au projet un nom, HelloWorld, puis choisissez Créer.


7 Notes

S’il s’agit de la première fois que vous utilisez Visual Studio pour créer une
application SDK pour Windows App, une boîte de dialogue Paramètres peut
apparaître. Choisissez mode Développeur, puis choisissez Oui.

Visual Studio installe un package en mode développeur supplémentaire pour


vous. Une fois l’installation du package terminée, fermez la boîte de dialogue
Paramètres .

Créer l’application
Il est temps de commencer à développer. Vous allez ajouter un contrôle de bouton,
ajouter une action au bouton, puis exécuter l’application « Hello World » pour voir à
quoi il ressemble.

Ajouter un bouton à la zone de conception


1. Dans l’Explorateur de solutions , double-cliquez sur MainWindow.xaml pour ouvrir
l’éditeur de balisage XAML.

L’éditeur XAML est l’endroit où vous pouvez ajouter ou modifier le balisage.


Contrairement aux projets UWP, WinUI 3 n’a pas de mode Création.

2. Examinez le contrôle bouton imbriqué dans StackPanel à la racine de la fenêtre.


Modifier l’étiquette sur le bouton
1. Dans l’éditeur XAML , remplacez la valeur de contenu du bouton « Cliquez sur moi
» par « Hello World ! ».

2. Notez que le bouton a également un gestionnaire d’événements Click nommé


myButton_Click spécifié. Nous y arriverons à l’étape suivante.

Modifier le gestionnaire d’événements


Un « gestionnaire d’événements » semble compliqué, mais il s’agit simplement d’un
autre nom pour le code appelé lorsqu’un événement se produit. Dans ce cas, il ajoute
une action déclenchée par le bouton « Hello World ! ».

1. Dans l’Explorateur de solutions, double-cliquez sur MainWindow.xaml.cs, la page


code-behind.

2. Modifiez le code du gestionnaire d’événements dans la fenêtre de l’éditeur C# qui


s’ouvre.

Voici où les choses sont intéressantes. Le gestionnaire d’événements par défaut


ressemble à ceci :
Nous allons le modifier, donc il ressemble à ceci :

Voici le code à copier et coller :

C#

private async void myButton_Click(object sender, RoutedEventArgs e)


{
var welcomeDialog = new ContentDialog()
{
Title = "Hello from HelloWorld",
Content = "Welcome to your first Windows App SDK app.",
CloseButtonText = "Ok",
XamlRoot = myButton.XamlRoot
};
await welcomeDialog.ShowAsync();
}

Qu’est-ce que nous avons fait ?

Le code utilise le contrôle ContentDialog pour afficher un message de bienvenue dans


un contrôle contextuel modal dans la fenêtre active. (Pour plus d’informations sur
l’utilisation de Microsoft.UI.Xaml.Controls.ContentDialog , consultez classe
ContentDialog.)

Exécuter l’application
Il est temps de créer, déployer et lancer l’application sdk d’application Windows « Hello
World » pour voir ce qu’elle ressemble. Voici comment.
1. Utilisez le bouton Play (il contient le texte HelloWorld (package)) pour démarrer
l’application sur la machine locale.

(Vous pouvez également choisir Déboguer>Démarrer le débogage dans la barre


de menus ou appuyer sur F5 pour démarrer votre application.)

2. Affichez votre application, qui apparaît peu après la disparition d’un écran de
démarrage. L’application doit ressembler à cette image :

3. Sélectionnez le bouton Hello World.

Votre appareil Windows 10 ou version ultérieure affiche un message indiquant «


Bienvenue dans votre première application windows App SDK » avec le titre «
Hello from HelloWorld ». Cliquez sur Ok pour ignorer le message.
4. Pour fermer l’application, sélectionnez le bouton Arrêter le débogage dans la
barre d’outils. (Vous pouvez également choisir Déboguer>Arrêter le débogage
dans la barre de menus ou appuyer sur Maj+F5.)

Étapes suivantes
Félicitations pour avoir terminé ce tutoriel ! Nous espérons que vous avez appris
quelques notions de base sur le Kit de développement logiciel (SDK) d’application
Windows, WinUI 3 et l’IDE Visual Studio. Pour en savoir plus, suivez le tutoriel suivant :

Tutoriel : Créer une visionneuse de photos simple avec WinUI 3

Voir aussi
Écriture d’applications pour Windows : sélection d’une technologie de
développement
Vue d’ensemble du Kit de développement logiciel (SDK) d’application Windows
SDK d’Application Windows / Exemples WinUI 3

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer votre première
application de plateforme Windows
universelle dans Visual Studio avec
XAML et C#
Article • 03/02/2025

Dans ce tutoriel, en guise d’introduction à l’environnement de développement intégré


(IDE) Visual Studio, vous créez une application « Hello World » qui s’exécute sur
n’importe quel appareil Windows 10 ou version ultérieure. Pour ce faire, vous utilisez un
modèle de projet de plateforme Windows universelle (UWP), un langage XAML
(Extensible Application Markup Language) et le langage de programmation C#.

7 Notes

Si vous êtes satisfait de vos fonctionnalités actuelles dans la plateforme Windows


universelle (UWP), il n’est pas nécessaire de migrer votre type de projet vers le Kit
de développement logiciel (SDK) d’application Windows. WinUI 2.x et le Kit de
développement logiciel (SDK) Windows prennent en charge les types de projets
UWP. Si vous souhaitez commencer à utiliser WinUI 3 et le Kit de développement
logiciel (SDK) d’application Windows, vous pouvez suivre les étapes décrites dans le
didacticiel sdk d’application Windows.

Dans ce tutoriel, vous allez :

" Créer un projet
" Créer une application
" Exécuter l’application

Conditions préalables
Vous avez besoin de Visual Studio pour suivre ce didacticiel. Visitez la page de
téléchargements Visual Studio pour une version gratuite.

7 Notes

Ce tutoriel nécessite le modèle de projet application vide pour Windows universel.


Lors de l’installation, sélectionnez la charge de travail développement de
plateforme Windows universelle :

Si Visual Studio est déjà installé et que vous devez l’ajouter, dans le menu,
sélectionnez Outils>Obtenir des outils et des fonctionnalités, ou dans la fenêtre
Créer un projet, sélectionnez l'Installer d’autres outils et fonctionnalités lien.

Créer un projet
Tout d’abord, créez un projet de plateforme Windows universelle. Le type de projet est
fourni avec tous les fichiers de modèle dont vous avez besoin, avant même d’ajouter
quoi que ce soit !

1. Ouvrez Visual Studio et, dans la fenêtre de démarrage, choisissez Créer un projet.

2. Sur l’écran Créer un projet, entrez Windows universel dans la zone de recherche,
choisissez le modèle C# pour Application vide (Windows universel), puis
choisissez Suivant.
3. Donnez au projet un nom, HelloWorld, puis choisissez Créer.

4. Acceptez les paramètres de version cible par défaut et de version minimale dans la
boîte de dialogue Nouveau projet de plateforme Windows universelle.
7 Notes

Si c’est la première fois que vous avez utilisé Visual Studio pour créer une
application UWP, la boîte de dialogue Activer le mode développeur pour
Windows s’affiche. Sélectionnez Paramètres pour développeurs pour ouvrir
les Paramètres. Activez mode développeur, puis choisissez Oui.

Visual Studio installe un package en mode développeur supplémentaire pour


vous. Une fois l’installation du package terminée, fermez la boîte de dialogue
Paramètres .

Créer l’application
Il est temps de commencer à développer des logiciels. Ajoutez un contrôle de bouton,
ajoutez une action au bouton, puis démarrez l’application « Hello World » pour voir à
quoi il ressemble.

Ajouter un bouton à la zone de conception


1. Dans l’Explorateur de solutions , double-cliquez sur MainPage.xaml pour ouvrir
une vue fractionnée.

Il existe deux volets : le concepteur XAML , qui inclut un canevas de conception et


l’éditeur XAML , où vous pouvez ajouter ou modifier du code.
2. Choisissez Boîte à outils pour ouvrir la fenêtre volante Boîte à outils.
Si vous ne voyez pas l’option Boîte à outils, vous pouvez l’ouvrir à partir de la
barre de menus. Pour ce faire, choisissez Affichage>Barre d’outils. Ou appuyez sur
Ctrl+Alt+X.

3. Sélectionnez l’icône Épingler pour ancrer la fenêtre Boîte à outils.


4. Sélectionnez le contrôle Bouton, puis faites-le glisser sur le canevas de conception.
Si vous examinez le code dans l’éditeur XAML , vous voyez que le bouton s’affiche
également :

Ajouter une étiquette au bouton


1. Dans l'Éditeur XAML , modifiez la valeur Button Content de Bouton à Hello World!

2. Notez également que le bouton change dans le Designer XAML .

Ajouter un gestionnaire d’événements


Un gestionnaire d’événements semble compliqué, mais il s’agit simplement d’un autre
nom pour le code appelé lorsqu’un événement se produit. Dans ce cas, il ajoute une
action au bouton Hello World !.

1. Double-cliquez sur le contrôle bouton dans la zone de conception.

2. Modifiez le code de gestionnaire d’événements dans MainPage.xaml.cs, la page


code-behind.

C’est là que les choses sont intéressantes. Le gestionnaire d’événements par défaut
ressemble à ceci :

Modifiez-le, de sorte qu’il ressemble à ceci :

Voici le code à copier et coller :

C#

private async void Button_Click(object sender, RoutedEventArgs e)


{
MediaElement mediaElement = new MediaElement();
var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
Windows.Media.SpeechSynthesis.SpeechSynthesisStream stream = await
synth.SynthesizeTextToStreamAsync("Hello, World!");
mediaElement.SetSource(stream, stream.ContentType);
mediaElement.Play();
}
Qu’est-ce que nous avons fait ?
Le code utilise certaines API Windows pour créer un objet de synthèse vocale, puis lui
donne du texte à dire. Pour plus d’informations sur l’utilisation de SpeechSynthesis ,
consultez System.Speech.Synthesis.

Exécuter l’application
Il est temps de créer, déployer et lancer l’application UWP « Hello World » pour voir à
quoi il ressemble. Voici comment.

1. Utilisez le bouton Play (il contient le texte Ordinateur Local) pour démarrer
l’application sur l’ordinateur local.

Vous pouvez également choisir Déboguer>Démarrer le débogage dans la barre


de menus ou appuyer sur F5 pour démarrer votre application.

2. Affichez votre application, qui apparaît peu après la disparition d’un écran de
démarrage. L’application doit ressembler à cette image :
3. Sélectionnez le bouton Hello World.

Votre appareil Windows 10 ou version ultérieure indique littéralement « Hello,


World ! »

4. Pour fermer l’application, sélectionnez le bouton Arrêter le débogage dans la


barre d’outils. Vous pouvez également choisir Déboguer>Arrêter le débogage
dans la barre de menus, ou appuyez sur Maj+F5.

Contenu connexe
Vue d'ensemble UWP
Obtenir des exemples d’applications UWP

Étape suivante
Félicitations pour avoir terminé ce tutoriel ! Nous espérons que vous avez appris
quelques notions de base sur UWP et l’IDE Visual Studio. Pour en savoir plus, suivez le
tutoriel suivant :

Créer une interface utilisateur


Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer une application WPF avec
C#
Article • 03/02/2025

Dans ce tutoriel, vous vous familiarisez avec de nombreux outils, boîtes de dialogue et
concepteurs que vous pouvez utiliser lorsque vous développez des applications avec Visual
Studio. Vous créez une application « Hello, World », concevez l’interface utilisateur, ajoutez du
code et déboguez des erreurs. En même temps, découvrez comment travailler dans
l’environnement de développement intégré Visual Studio (IDE).

" Configurer l’IDE
" Créer un projet
" Concevoir l’interface utilisateur
" Déboguer et tester l’application

Conditions préalables
Si vous n'avez pas Visual Studio, allez sur Visual Studio téléchargements pour l'installer
gratuitement.
Vérifiez que la charge de travail Développement de bureau .NET est installée. Vous
pouvez vérifier cette configuration dans Visual Studio Installer.
Vous pouvez utiliser .NET Framework ou .NET Core pour ce didacticiel. .NET Core est le
framework plus récent et plus moderne. .NET Core nécessite Visual Studio 2019 version
16.3 ou ultérieure.

Qu’est-ce que Windows Presentation Foundation ?


Windows Presentation Foundation (WPF) est une infrastructure d’interface utilisateur qui crée
des applications clientes de bureau. La plateforme de développement WPF prend en charge un
large éventail de fonctionnalités de développement d’applications, notamment un modèle
d’application, des ressources, des contrôles, des graphiques, une disposition, une liaison de
données, des documents et une sécurité.

WPF fait partie de .NET. Si vous avez créé des applications avec .NET à l’aide de ASP.NET ou
Windows Forms, l’expérience de programmation doit être familière. WPF utilise le langage de
balisage d’application extensible (XAML) pour fournir un modèle déclaratif pour la
programmation d’applications. Pour plus d’informations, consultez Guide de bureau (WPF
.NET).
Configurer l’IDE
Lorsque vous lancez Visual Studio, la fenêtre de démarrage s’ouvre. Sélectionnez Continuer
sans code pour ouvrir l’environnement de développement. Vous voyez les fenêtres d’outils, les
menus et les barres d’outils et l’espace de fenêtre principal. Les fenêtres outil sont ancrées sur
les côtés de la fenêtre d’application. La zone de recherche, la barre de menus et la barre
d’outils standard se trouvent en haut. Lorsque vous chargez une solution ou un projet, les
éditeurs et les concepteurs apparaissent dans l’espace central de la fenêtre d’application.
Lorsque vous développez une application, vous passez la plupart de votre temps dans cette
zone centrale.

Créer le projet
Lorsque vous créez une application dans Visual Studio, vous créez d’abord un projet et une
solution. Pour cet exemple, vous créez un projet WPF (Windows Presentation Foundation).

1. Ouvrez Visual Studio.

2. Dans la fenêtre de démarrage, choisissez Créer un projet.

3. Sur l'écran Créer un nouveau projet, recherchez WPF. Choisissez Application WPF, puis
choisissez Suivant.

4. À l’écran suivant, donnez un nom au projet HelloWPFApp, puis choisissez suivant .

5. Dans la fenêtre Informations supplémentaires, vérifiez que .NET 8.0 est sélectionnée pour
votre framework cible. Choisissez ensuite Créer.

Visual Studio crée le projet et la solution HelloWPFApp. Explorateur de solutions affiche les
différents fichiers. Le concepteur WPF affiche un affichage de conception et une vue XAML de
MainWindow.xaml dans un affichage fractionné. Vous pouvez faire glisser le séparateur pour

afficher plus ou moins de chaque vue. Vous pouvez choisir de voir uniquement l’affichage
visuel ou uniquement l’affichage XAML.


7 Notes

Pour plus d’informations sur le langage de balisage d'application extensible (XAML),


consultez aperçu du XAML pour WPF.

Après avoir créé le projet, vous pouvez le personnaliser. Pour ce faire, choisissez fenêtre
Propriétés dans le menu Affichage, ou appuyez sur F4. Ensuite, vous pouvez afficher et
modifier des options pour les éléments de projet, les contrôles et d’autres éléments d’une
application.

Concevoir l’interface utilisateur


Si le concepteur n’est pas ouvert, sélectionnez MainWindow.xaml et sélectionnez Shift+F7 pour
ouvrir le concepteur.

Dans ce tutoriel, vous allez ajouter trois types de contrôles à cette application : un contrôle
TextBlock, deux contrôles RadioButton et un contrôle Button.

Ajouter un contrôle TextBlock


Suivez ces étapes pour ajouter un TextBlock.

1. Sélectionnez Ctrl+Q pour activer la zone de recherche et taper Boîte à outils. Choisissez
Afficher > Boîte à outils dans la liste des résultats.
2. Dans la fenêtre Boîte à outils, développez le nœud Contrôles WPF communs pour
afficher le contrôle TextBlock.

3. Ajoutez un contrôle TextBlock à l’aire de conception. Choisissez l’élément TextBlock et


faites-le glisser vers la fenêtre sur l’aire de conception. Centrez le contrôle en haut de la
fenêtre. Vous pouvez utiliser les instructions pour centrer le contrôle.

Votre fenêtre doit ressembler à cette image :

Le balisage XAML doit ressembler à cet exemple :

XAML

<Grid>
<TextBlock HorizontalAlignment="Left" Margin="387,60,0,0"
TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top"/>
</Grid>

Personnaliser le texte dans le bloc de texte


Vous pouvez modifier le texte affiché par TextBlock.

1. Dans la vue XAML, recherchez le balisage TextBlock et remplacez l’attribut Text de


TextBlock par Select a message option and then choose the Display button.

Le balisage XAML doit ressembler à cet exemple :

XAML

<Grid>
<TextBlock HorizontalAlignment="Left" Margin="387,60,0,0"
TextWrapping="Wrap" Text="Select a message option and then choose the Display
button." VerticalAlignment="Top"/>
</Grid>

2. Centrez à nouveau le TextBlock, puis enregistrez vos modifications en sélectionnant


Ctrl+S ou en utilisant l’élément de menu Fichier .

Ajouter des cases d’option


Ensuite, ajoutez deux contrôles RadioButton au formulaire.

1. Dans la boîte à outils , trouvez le contrôle RadioButton .

2. Ajoutez deux contrôles RadioButton à l’aire de conception. Choisissez l’élément


RadioButton et faites-le glisser vers la fenêtre sur l’aire de conception. Déplacez les
boutons en les sélectionnant et en utilisant les touches de direction. Organisez-les pour
que les boutons apparaissent côte à côte sous le contrôle TextBlock. Vous pouvez utiliser
les instructions pour aligner les contrôles.

Votre fenêtre doit ressembler à ceci :


3. Dans la fenêtre Propriétés pour le contrôle RadioButton gauche, en haut, remplacez la
propriété Name par HelloButton .

4. Dans la fenêtre Propriétés du contrôle RadioButton approprié, remplacez la propriété


Name par GoodbyeButton , puis enregistrez vos modifications.

Ajouter du texte d’affichage pour chaque bouton radio


Ensuite, ajoutez du texte d’affichage pour chaque contrôle RadioButton. La procédure suivante
met à jour la propriété Contenu d'un contrôle RadioButton.
Mettez à jour l’attribut Contenu pour les deux cases d’option HelloButton et
GoodbyeButton aux valeurs "Hello" et "Goodbye" dans le code XAML. Le balisage XAML

doit maintenant ressembler à cet exemple :

XAML

<Grid>
<TextBlock HorizontalAlignment="Left" Margin="252,47,0,0"
TextWrapping="Wrap" Text="Select a message option and then choose the Display
button." VerticalAlignment="Top"/>
<RadioButton x:Name="HelloButton" Content="Hello"
HorizontalAlignment="Left" Margin="297,161,0,0" VerticalAlignment="Top"/>
<RadioButton x:Name="GoodbyeButton" Content="Goodbye"
HorizontalAlignment="Left" Margin="488,161,0,0" VerticalAlignment="Top"/>
</Grid>

Définir un bouton radio à cocher par défaut


Dans cette étape, configurez HelloButton comme sélectionné par défaut afin que l’un des deux
boutons radio soit toujours sélectionné.

1. Dans la vue XAML, recherchez le balisage pour HelloButton.

2. Ajoutez un attribut IsChecked et définissez-le sur True. Plus précisément, ajoutez


IsChecked="True" .

Le balisage XAML doit maintenant ressembler à cet exemple :

XAML

<Grid>
<TextBlock HorizontalAlignment="Left" Margin="252,47,0,0"
TextWrapping="Wrap" Text="Select a message option and then choose the Display
button." VerticalAlignment="Top"/>
<RadioButton x:Name="HelloButton" Content="Hello" IsChecked="True"
HorizontalAlignment="Left" Margin="297,161,0,0" VerticalAlignment="Top"/>
<RadioButton x:Name="GoodbyeButton" Content="Goodbye"
HorizontalAlignment="Left" Margin="488,161,0,0" VerticalAlignment="Top"/>
</Grid>

Ajouter le contrôle de bouton


L’élément d’interface utilisateur final que vous ajoutez est un contrôle Button.

1. Dans la boîte à outils , trouvez le contrôle du bouton . Ajoutez-le à l’aire de conception


sous les contrôles RadioButton en le faisant glisser vers le formulaire en mode Création.
Les instructions peuvent vous aider à centrer le contrôle.

2. Dans la vue XAML, modifiez la valeur de Content pour le contrôle Button de


Content="Button" en Content="Display" , puis enregistrez les modifications.

Votre fenêtre doit ressembler à cette capture d’écran :

Le balisage XAML doit maintenant ressembler à cet exemple :

XAML

<Grid>
<TextBlock HorizontalAlignment="Left" Margin="252,47,0,0"
TextWrapping="Wrap" Text="Select a message option and then choose the Display
button." VerticalAlignment="Top"/>
<RadioButton x:Name="HelloButton" Content="Hello" IsChecked="True"
HorizontalAlignment="Left" Margin="297,161,0,0" VerticalAlignment="Top"/>
<RadioButton x:Name="GoodbyeButton" Content="Goodbye"
HorizontalAlignment="Left" Margin="488,161,0,0" VerticalAlignment="Top"/>
<Button Content="Display" HorizontalAlignment="Left"
Margin="377,270,0,0" VerticalAlignment="Top" Width="75"/>
</Grid>

Ajouter du code au bouton d’affichage


Lorsque cette application s’exécute, une boîte de message s’affiche après qu’un utilisateur a
choisi un bouton radio, puis a choisi le bouton Afficher. Une boîte de message s’affiche pour
Hello, et une autre apparaît pour Adieu. Pour créer ce comportement, vous ajoutez du code à
l’événement Button_Click dans MainWindow.xaml.cs.
1. Dans l'aire de conception, double-cliquez sur le bouton Afficher .

MainWindow.xaml.cs s’ouvre, avec le curseur sur l’événement Button_Click .

C#

private void Button_Click(object sender, RoutedEventArgs e)


{

Lorsque vous double-cliquez sur le bouton Afficher, Click="Button_Click" est ajouté au


code XAML.

Le balisage XAML doit maintenant ressembler à cet exemple :

XAML

<Grid>
<TextBlock HorizontalAlignment="Left" Margin="252,47,0,0"
TextWrapping="Wrap" Text="Select a message option and then choose the Display
button." VerticalAlignment="Top"/>
<RadioButton x:Name="HelloButton" Content="Hello" IsChecked="True"
HorizontalAlignment="Left" Margin="297,161,0,0" VerticalAlignment="Top"/>
<RadioButton x:Name="GoodbyeButton" Content="Goodbye"
HorizontalAlignment="Left" Margin="488,161,0,0" VerticalAlignment="Top"/>
<Button Content="Display" HorizontalAlignment="Left"
Margin="377,270,0,0" VerticalAlignment="Top" Width="75"
Click="Button_Click"/>
</Grid>

2. À l’intérieur des accolades Button_Click , ajoutez le code suivant :

C#

if (HelloButton.IsChecked == true)
{
MessageBox.Show("Hello.");
}
else if (GoodbyeButton.IsChecked == true)
{
MessageBox.Show("Goodbye.");
}

3. Enregistrez l’application.

Déboguer et tester l’application


Ensuite, déboguez l’application pour rechercher des erreurs et tester que les deux boîtes de
message s’affichent correctement. Les instructions suivantes vous indiquent comment
construire et lancer le débogueur. Pour plus d’informations, consultez Construire une
application WPF (WPF) et Déboguer WPF.

Modifier le nom de MainWindow.xaml


Donnez un nom plus spécifique à MainWindow. Dans Explorateur de solutions, cliquez avec le
bouton droit sur MainWindow.xaml et choisissez Renommer. Renommez le fichier en
Greetings.xaml. Dans cet exemple, cette modification crée une erreur utilisée ultérieurement
pour illustrer le débogage.

Rechercher et corriger des erreurs


Dans cette étape, vous trouvez l’erreur provoquée précédemment par la modification du nom
du fichier MainWindow.xaml .

Démarrez le débogage et recherchez l’erreur


1. Démarrez le débogueur en sélectionnant F5 ou en sélectionnant Déboguer, puis
Démarrer le débogage.

Une fenêtre Mode arrêt s’affiche et la fenêtre Sortie indique qu’une IOException s’est
produite : Impossible de localiser la ressource mainwindow.xaml.

2. Arrêtez le débogueur en choisissant Déboguer>Arrêter le débogage.

Vous avez renommé MainWindow.xaml en Greetings.xaml , mais le code fait toujours référence à
MainWindow.xaml comme URI de démarrage de l’application, afin que le projet ne puisse pas

démarrer.
Spécifier Greetings.xaml comme URI de démarrage
1. Dans Explorateur de solutions, ouvrez le fichier App.xaml .

2. Modifiez StartupUri="MainWindow.xaml" pour StartupUri="Greetings.xaml" , puis


enregistrez les modifications.

En guise d’étape facultative, il évite de confusion pour modifier le titre de la fenêtre de votre
application pour qu’il corresponde à ce nouveau nom.

1. Dans Explorateur de solutions, ouvrez le fichier Greetings.xaml que vous venez de


renommer.

2. Remplacez la valeur de la propriété Window.Title de Title="MainWindow" par


Title="Greetings" , puis enregistrez les modifications.

Démarrez à nouveau le débogueur (appuyez sur F5). Vous devez maintenant voir la fenêtre
Greetings de votre application.

Pour arrêter le débogage, fermez la fenêtre d’application

Déboguer avec des points d’arrêt


Vous pouvez tester le code pendant le débogage en ajoutant des points d’arrêt. Vous pouvez
ajouter des points d’arrêt en choisissant Déboguer>Basculer le point d’arrêt, en cliquant dans
la marge gauche de l’éditeur à côté de la ligne de code où mettre le point d’arrêt, ou en
appuyant sur F9.
Ajouter des points d’arrêt
1. Ouvrez Greetings.xaml.cs, puis sélectionnez cette ligne : MessageBox.Show("Hello.")

2. Ajoutez un point d'arrêt à partir du menu en sélectionnant Déboguer, puis Basculer le


point d'arrêt.

Un cercle rouge apparaît en regard de la ligne de code dans la marge éloignée gauche de
la fenêtre de l’éditeur.

3. Sélectionnez cette ligne : MessageBox.Show("Goodbye.") .

4. Appuyez sur la touche F9 pour ajouter un point d’arrêt, puis sélectionnez F5 pour
démarrer le débogage.

5. Dans la fenêtre Greetings , choisissez la case d'option Hello , puis le bouton Afficher .

La ligne MessageBox.Show("Hello.") est mise en surbrillance en jaune. En bas de l’IDE, les


fenêtres Automatique, Variables locales et Espion sont ancrées ensemble sur le côté
gauche. Les fenêtres Pile des appels, Points d’arrêt, Paramètres d’exception, Commande,
Exécution et Sortie sont ancrées ensemble sur le côté droit.

6. Dans la barre de menus, choisissez Déboguer>Pas à pas sortant.

L’application reprend l’exécution et une boîte de message avec le mot « Hello » s’affiche.

7. Choisissez OK dans la boîte de message pour la fermer.


8. Dans la fenêtre Greetings, choisissez le bouton radio Au revoir, puis choisissez le bouton
Afficher.

La ligne MessageBox.Show("Goodbye.") est mise en surbrillance en jaune.

9. Choisissez la clé F5 pour continuer le débogage. Lorsque la boîte de message s’affiche,


choisissez OK sur la boîte de message pour la fermer.

10. Pour arrêter le débogage, fermez la fenêtre de l’application.

11. Dans la barre de menus, choisissez Débogage>Désactiver tous les points d’arrêt.

Afficher une représentation des éléments d’interface


utilisateur
Dans l’application en cours d’exécution, vous devez voir un widget qui apparaît en haut de
votre fenêtre. Le widget est un assistance d’exécution qui fournit un accès rapide à certaines
fonctionnalités de débogage utiles. Sélectionnez le premier bouton, Accéder à l’arborescence
visuelle dynamique. Vous devez voir une fenêtre avec une arborescence qui contient tous les
éléments visuels de votre page. Développez les nœuds pour trouver les boutons que vous avez
ajoutés.

Générer une version release de l’application


Après avoir vérifié que tout fonctionne, vous pouvez préparer une build de mise en production
de l’application.
1. Dans le menu principal, sélectionnez Compiler>Nettoyer la solution pour supprimer les
fichiers intermédiaires et les fichiers de sortie créés au cours des builds précédentes. Cette
étape n’est pas nécessaire, mais elle nettoie les sorties des builds de débogage.

2. Changez la configuration de build de HelloWPFApp en remplaçant Debug par Release à


l’aide du contrôle de liste déroulante de la barre d’outils. Il indique Débogage
actuellement.

3. Générez la solution en choisissant Générer>Générer la solution.

Félicitations pour avoir terminé ce tutoriel ! Vous pouvez trouver le .exe que vous avez créé
sous le répertoire de votre solution et de votre projet
(...\HelloWPFApp\HelloWPFApp\bin\Release).

Contenu connexe
conseils de productivité

Étape suivante
Félicitations pour avoir terminé ce tutoriel ! Pour en savoir plus, poursuivez avec les didacticiels
suivants.

Poursuivre avec d’autres didacticiels WPF


Tutoriel : Créer une application
Windows Forms dans Visual Studio avec
C#
Article • 07/02/2025

Dans ce tutoriel, vous allez créer une application C# simple qui dispose d’une interface
utilisateur Windows. L’application a un bouton qui modifie le texte d’une étiquette.
Cette application simple a tous les composants utilisés pour les programmes Windows
Forms plus complexes.

" Créer un projet C# dans Visual Studio


" Créer une application
" Exécuter votre application

Conditions préalables
Si vous n'avez pas Visual Studio, allez sur Téléchargements de Visual Studio 2022
pour l'installer gratuitement.
Charge de travail développement de bureaux .NET. Pour vérifier ou installer cette
charge de travail dans Visual Studio, sélectionnez Tools>Obtenir des outils et des
fonctionnalités. Pour plus d’informations, consultez Modifier les charges de travail
ou les composants individuels.

Créer un projet
Tout d’abord, créez un projet d’application C#. Le type de projet est fourni avec tous les
fichiers de modèle dont vous avez besoin pour créer votre application.

1. Ouvrez Visual Studio, puis sélectionnez Créer un projet dans la fenêtre de


démarrage.
2. Dans Créer un projet, sélectionnez le modèle application Windows Forms (.NET
Framework) pour C#.

Vous pouvez affiner votre recherche pour accéder rapidement au modèle souhaité.
Par exemple, tapez application Windows Forms dans la zone de recherche. Ensuite,
sélectionnez C# dans la liste des langues, puis sélectionnez Windows dans la liste
des plateformes.


3. Dans la fenêtre Configurer votre nouveau projet, dans nom du projet, entrez
HelloWorld, puis sélectionnez Créer.

Visual Studio ouvre votre nouveau projet.

Créer l’application
Une fois que vous avez sélectionné votre modèle de projet C# et nommez votre projet,
Visual Studio ouvre un formulaire pour vous. Un formulaire est une interface utilisateur
Windows. Créez une application Hello World en ajoutant des contrôles au formulaire.
Ensuite, exécutez l’application.

Ajouter un bouton au formulaire


1. Sélectionnez Boîte à outils pour ouvrir la fenêtre de menu volant Boîte à outils.
Si vous ne voyez pas l’option Boîte à outils, vous pouvez l’ouvrir à partir de la
barre de menus. Sélectionnez Afficher>boîte à outils ou Ctrl+Alt+X.

2. Développez Contrôles communs et sélectionnez l’icône Épingler pour ancrer la


fenêtre Boîte à outils.

3. Sélectionnez le bouton du contrôle, puis faites-le glisser sur le formulaire.


4. Dans la fenêtre Propriétés, recherchez Texte. Remplacez le nom de button1 par
Click this , puis sélectionnez Entrée.

Si vous ne voyez pas la fenêtre Propriétés, vous pouvez l’ouvrir à partir de la barre
de menus. Sélectionnez Afficher>Fenêtre Propriétés ou F4.

5. Dans la section Conception de la fenêtre Propriétés, remplacez le nom de button1


par btnClickThis , puis sélectionnez Entrée.
7 Notes

Si vous avez alphabetisé la liste dans la fenêtre des propriétés , le bouton1


apparaît, par contre, dans la section (DataBindings).

Ajouter une étiquette au formulaire


Après avoir ajouté un contrôle bouton pour créer une action, ajoutez un contrôle
d’étiquette pour recevoir le texte.

1. Sélectionnez le contrôle d’étiquette dans la boîte à outils . Faites-le glisser sur le


formulaire et déposez-le sous le Cliquez sur ce bouton.

2. Dans la section Conception ou dans la section (DataBindings) de la fenêtre


Propriétés, remplacez le nom de label1 par lblHelloWorld . Sélectionnez ensuite
Entrée.

Ajouter du code au formulaire


1. Dans la fenêtre Form1.cs [Création], double-cliquez sur le bouton Cliquez sur ce
bouton pour ouvrir la fenêtre Form1.cs.

Vous pouvez également développer Form1.cs dans Explorateur de solutions, puis


choisir Form1.

2. Dans la fenêtre Form1.cs, après la ligne private void, tapez ou entrez


lblHelloWorld.Text = "Hello World!"; , comme montré dans la capture d’écran

suivante.
Exécuter l’application
1. Sélectionnez le bouton Démarrer pour exécuter l’application.

Plusieurs choses se produisent. Dans l’IDE Visual Studio, la fenêtre Outils de


Diagnostic s’ouvre et une fenêtre Sortie s’ouvre également. Toutefois, en dehors
de l’IDE, une boîte de dialogue Form1 s’affiche. Elle inclut Cliquez sur ce bouton et
le texte disant label1.

2. Sélectionnez le Cliquez sur ce bouton dans la boîte de dialogue Form1. Notez que
le texte label1 devient Hello World!.
3. Fermez la boîte de dialogue Form1 pour arrêter l’exécution de l’application.

Contenu connexe
Félicitations pour avoir terminé ce tutoriel. Pour en savoir plus, suivez le tutoriel suivant :

didacticiel : Créer une visionneuse d’images

Ou essayez ces autres didacticiels :

Tutoriels C#
Tutoriels Visual Basic
Tutoriels C++

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer une application
Windows Forms visionneuse d’images
(.NET Framework)
Article • 07/02/2025

Dans cette série de trois didacticiels, vous créez une application Windows Forms qui
charge une image et l’affiche. Visual Studio Integrated Design Environment (IDE) fournit
les outils dont vous avez besoin pour créer l’application.

Dans ce premier tutoriel, vous allez apprendre à :

" Créer un projet Visual Studio qui utilise Windows Forms


" Ajouter un élément de disposition
" Exécuter votre application

Pour créer une application Windows Forms avec .NET, suivez le tutoriel Créer une
application Windows Forms avec .NET. Consultez le guide bureau sur Windows Forms
.NET pour en savoir plus.

Conditions préalables
Vous avez besoin de Visual Studio pour suivre ce didacticiel. Visitez la page de
téléchargements Visual Studio pour une version gratuite.
Charge de travail développement de bureaux .NET. Pour vérifier ou installer cette
charge de travail dans Visual Studio, sélectionnez Tools>Obtenir des outils et des
fonctionnalités. Pour plus d’informations, consultez Modifier les charges de travail
ou les composants individuels.

Créer votre projet Windows Forms


Lorsque vous créez une visionneuse d’images, la première étape consiste à créer un
projet d’application Windows Forms.

1. Ouvrez Visual Studio.

2. Dans la fenêtre de démarrage, sélectionnez Créer un projet.


3. Dans la fenêtre Créer un projet, recherchez Windows Forms. Ensuite, sélectionnez
Desktop dans la liste type de projet.

4. Sélectionnez le modèle Windows Forms App (.NET Framework), pour soit C# soit
Visual Basic, puis sélectionnez suivant.


5. Dans la fenêtre Configurer votre nouveau projet, nommez votre projet
PictureViewer, puis sélectionnez Créer.

Visual Studio crée une solution pour votre application. Une solution est un conteneur
pour tous les projets et fichiers nécessaires à votre application.

À ce stade, Visual Studio affiche un formulaire vide dans le Concepteur Windows Forms.

Ajouter un élément de disposition


Votre application d’affichage d’image contient une zone d’image, une case à cocher et
quatre boutons que vous ajoutez le tutoriel suivant. L’élément de disposition contrôle
son emplacement sur le formulaire. Cette section vous montre comment modifier le titre
de votre formulaire, redimensionner le formulaire et ajouter un élément de disposition.

1. Dans votre projet, sélectionnez le Concepteur Windows Forms. L’onglet lit


Form1.cs [Création] pour C# ou Form1.vb [Création] pour Visual Basic.

2. Sélectionnez n’importe où dans Form1.

3. La fenêtre Propriétés affiche désormais les propriétés du formulaire. La fenêtre


Propriétés se trouve généralement en bas à droite de Visual Studio. Cette section
contrôle différentes propriétés, telles que le premier plan et la couleur d’arrière-
plan, le texte de titre qui apparaît en haut du formulaire et la taille du formulaire.
Si vous ne voyez pas Propriétés, sélectionnez Affichage>Fenêtre Propriétés.

4. Recherchez la propriété Text dans la fenêtre propriétés . Selon la façon dont la liste
est triée, vous devrez peut-être faire défiler vers le bas. Entrez la valeur Visionneuse
d’images, puis choisissez Entrer.

Votre formulaire comporte désormais le texte Visionneuse d’images dans sa barre


de titre.

7 Notes

Vous pouvez afficher les propriétés par catégorie ou par ordre alphabétique.
Utilisez les boutons de la fenêtre Propriétés pour basculer d'avant en arrière.

5. Sélectionnez à nouveau le formulaire. Sélectionnez la poignée de


dimensionnement inférieure droite du formulaire. La poignée, représentée par un
petit carré blanc, se trouve dans le coin inférieur droit du formulaire.

Faites glisser la poignée pour redimensionner le formulaire afin que le formulaire


soit plus large et un peu plus grand. Si vous examinez la fenêtre Propriétés, la
propriété Taille est différente. Vous pouvez également modifier la taille du
formulaire en modifiant la propriété Size.

6. Sur le côté gauche de l’IDE Visual Studio, sélectionnez l’onglet boîte à outils. Si
vous ne le voyez pas, sélectionnez Afficher>Boîte à outils dans la barre de menus
ou Ctrl+Alt+X.

7. Sélectionnez le petit symbole en forme de triangle à côté de Conteneurs pour


ouvrir le groupe.
8. Double-cliquez sur TableLayoutPanel dans la boîte à outils . Vous pouvez
également faire glisser un contrôle de la boîte à outils vers le formulaire. Le
contrôle TableLayoutPanel apparaît dans votre formulaire.

7 Notes

Après avoir ajouté votre TableLayoutPanel, si une fenêtre apparaît à l’intérieur


de votre formulaire avec le titre Tâches TableLayoutPanel, sélectionnez
n’importe où dans le formulaire pour le fermer.

9. Sélectionnez TableLayoutPanel. Vous pouvez vérifier quel contrôle est sélectionné


en examinant la fenêtre Propriétés.
10. Quand TableLayoutPanel est sélectionné, recherchez la propriété Dock, qui a la
valeur None. Sélectionnez la flèche déroulante, puis sélectionnez Remplir, qui est
le grand bouton au milieu du menu déroulant.

L'ancrage fait référence à la manière dont une fenêtre est attachée à une autre
fenêtre ou zone.

TableLayoutPanel remplit désormais l’intégralité du formulaire. Si vous


redimensionnez à nouveau le formulaire, le TableLayoutPanel reste ancré et se
redimensionne pour s’adapter.

11. Dans le formulaire, sélectionnez le TableLayoutPanel. Dans le coin supérieur droit, il


y a un petit bouton de triangle noir.

Sélectionnez le triangle pour afficher la liste des tâches du contrôle.


12. Sélectionnez Modifier les lignes et les colonnes pour afficher la boîte de dialogue
Styles de ligne et de colonne.

13. Sélectionnez Colonne1 et définissez sa taille sur 15 %. Vérifiez que l’option


Pourcentage est sélectionnée.

14. Sélectionnez Colonne2 et définissez-la sur 85 %.

15. Dans Afficher en haut de la boîte de dialogue Styles de ligne et de colonne,


sélectionnez Lignes. Définissez ligne1 sur 90 % et ligne2 à 10 %. Sélectionnez OK
pour enregistrer vos modifications.

Votre TableLayoutPanel possède désormais une grande ligne supérieure, une petite
ligne inférieure, une petite colonne gauche et une colonne de droite importante.
Votre mise en page est terminée.

7 Notes

Avant d’exécuter votre application, enregistrez votre application en choisissant le


bouton Enregistrer tout barre d’outils. Vous pouvez également enregistrer votre
application en choisissant Fichier>Tout enregistrer dans la barre de menus, ou en
appuyant sur Ctrl+Maj+S. Il est recommandé d’économiser tôt et souvent.

Exécuter votre application


Lorsque vous créez un projet d’application Windows Forms, vous créez un programme
qui s’exécute. À ce stade, votre application Visionneuse d’images ne fait pas grand-
chose. Pour l’instant, elle affiche une fenêtre vide avec Visionneuse d’images dans la
barre de titre.

Pour exécuter l’application, procédez comme suit.

1. Utilisez l’une des méthodes suivantes :

Sélectionnez la touche F5.


Dans la barre de menus, sélectionnez Débogage>Démarrer le débogage.
Dans la barre d’outils, sélectionnez le bouton Démarrer.

Visual Studio exécute votre application. Une fenêtre avec le titre Visionneuse
d’images s’affiche.
Examinez la barre d’outils de l’IDE Visual Studio. D’autres boutons apparaissent
dans la barre d’outils lorsque vous exécutez une application. Ces boutons vous
permettent de faire des choses telles que arrêter et démarrer votre application, et
vous aider à suivre les erreurs.

2. Utilisez l’une des méthodes suivantes pour arrêter votre application :

Dans la barre d’outils, sélectionnez le bouton Arrêter le débogage.


Dans la barre de menus, sélectionnez Débogage>Arrêter le débogage.
À partir du clavier, entrez Maj+F5.
Sélectionnez X dans le coin supérieur de la fenêtre Visionneuse d’images.

Lorsque vous exécutez votre application à partir de l’IDE Visual Studio, elle est
appelée débogage. Vous exécutez votre application pour rechercher et corriger les
bogues. Vous suivez la même procédure pour exécuter et déboguer d’autres
programmes. Pour en savoir plus sur le débogage, consultez Premier aperçu du
débogueur.

Étape suivante
Passez au tutoriel suivant pour apprendre à ajouter des contrôles à votre programme
Picture Viewer.

Tutoriel 2 : Ajouter des contrôles à votre visionneuse d’images


Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Ajouter des contrôles à
l’application Windows Forms de
visionneuse d’images (.NET Framework)
Article • 03/02/2025

Dans cette série de trois didacticiels, vous créez une application Windows Forms qui
charge une image et l’affiche. Visual Studio Integrated Design Environment (IDE) fournit
les outils dont vous avez besoin pour créer l’application.

Ce programme comporte une zone d’image, une case à cocher et plusieurs boutons que
vous utilisez pour contrôler l’application. Ce tutoriel vous montre comment ajouter ces
contrôles.

Dans ce deuxième tutoriel, vous allez apprendre à :

" Ajouter des contrôles à votre application


" Ajouter des boutons dans un panneau de disposition
" Modifier les noms et emplacements des contrôles
" Ajouter des composants de boîte de dialogue

Pour créer une application Windows Forms avec .NET, suivez le tutoriel Créer une
application Windows Forms avec .NET. Consultez le guide bureau sur Windows Forms
.NET pour en savoir plus.

Conditions préalables
Ce tutoriel s’appuie sur le didacticiel précédent, Créer une application visionneuse
d’images. Terminez cette première fois et commencez par le projet que vous avez
créé pour ce didacticiel.

Ajouter des contrôles à votre application


L’application Visionneuse d’images utilise un contrôle PictureBox pour afficher une
image. Il utilise une case à cocher et plusieurs boutons pour gérer l’image et l’arrière-
plan et fermer l’application. Vous ajoutez PictureBox et une case à cocher à partir de la
boîte à outils dans l’IDE Visual Studio.

1. Ouvrez Visual Studio. Votre projet Visionneuse d’images s’affiche sous Ouvrir
récent.
2. Dans le Concepteur Windows Forms, sélectionnez le TableLayoutPanel que vous
avez ajouté dans le didacticiel précédent. Vérifiez que tableLayoutPanel1 s’affiche
dans la fenêtre Propriétés.

3. Sur le côté gauche de l’IDE Visual Studio, sélectionnez l’onglet boîte à outils. Si
vous ne le voyez pas, sélectionnez Afficher>Boîte à outils dans la barre de menus
ou Ctrl+Alt+X. Dans la boîte à outils, développez Contrôles communs.

4. Double-cliquez sur PictureBox pour ajouter un contrôle PictureBox à votre


formulaire. Visual Studio ajoute le contrôle PictureBox à la première cellule vide du
TableLayoutPanel.

5. Choisissez le nouveau contrôle PictureBox pour le sélectionner, puis sélectionnez


le triangle noir sur le nouveau contrôle PictureBox pour afficher sa liste de tâches.

6. Sélectionnez Dock dans le conteneur parent, ce qui définit la propriété PictureBox


Dock sur Fill. Vous pouvez voir cette valeur dans la fenêtre Propriétés.

7. Dans la fenêtre Propriétés de l’objet PictureBox, définissez la propriété


ColumnSpan sur 2. PictureBox remplit désormais les deux colonnes.

8. Affectez la valeur Fixed3D à sa propriété BorderStyle.

9. Dans le Concepteur Windows Forms, sélectionnez TableLayoutPanel. Ensuite, dans


la boîte à outils , double-cliquez sur l’élément CheckBox pour ajouter un nouveau
contrôle CheckBox. Votre PictureBox prend les deux premières cellules du
TableLayoutPanel. Par conséquent, le contrôle CheckBox est ajouté à la cellule
inférieure gauche.

10. Choisissez la propriété Text et entrez Stretch.


Ajouter des boutons dans un panneau de
disposition
Jusqu’à présent, vous avez ajouté des contrôles au TableLayoutPanel. Ces étapes vous
montrent comment ajouter quatre boutons à un nouveau panneau de disposition dans
TableLayoutPanel.

1. Sélectionnez TableLayoutPanel sur le formulaire. Ouvrez la boîte à outils , puis


sélectionnez Conteneurs. Double-cliquez sur FlowLayoutPanel pour ajouter un
nouveau contrôle à la dernière cellule de TableLayoutPanel.

2. Définissez la propriété Dock du FlowLayoutPanel sur Fill. Vous pouvez définir cette
propriété en sélectionnant le triangle noir, puis en sélectionnant Dock dans le
conteneur parent.

Un FlowLayoutPanel est un conteneur qui organise d’autres contrôles dans une


ligne, l’un après l’autre.

3. Sélectionnez le nouveau FlowLayoutPanel, puis ouvrez la boîte à outils , puis


sélectionnez Common Controls. Double-cliquez sur l’élément Bouton pour ajouter
un contrôle de bouton appelé button1.

4. Double-cliquez à nouveau sur le bouton pour ajouter un autre bouton. L’IDE


appelle le suivant button2.

5. Ajoutez deux boutons supplémentaires de cette façon. Une autre option consiste à
sélectionner « bouton2». Sélectionnez ensuite Modifier>Copier ou Ctrl+C. Ensuite,
choisissez Modifier>Coller dans la barre de menus ou appuyez sur Ctrl+V pour
coller une copie de votre bouton. Maintenant, collez-le à nouveau. L’IDE ajoute
button3 et button4 au FlowLayoutPanel.

6. Sélectionnez le premier bouton et définissez sa propriété Text sur Afficher une


image.

7. Définissez les propriétés Text des trois boutons suivants pour Effacer l’image,
définir la couleur d’arrière-planet Fermer.

8. Pour dimensionner les boutons et les organiser, sélectionnez FlowLayoutPanel.


Définissez la propriété FlowDirection sur RightToLeft.

Les boutons doivent s’aligner sur le côté droit de la cellule et inverser leur ordre
afin que le Afficher une image bouton se trouve à droite de la cellule. Vous pouvez
faire glisser les boutons autour de FlowLayoutPanel pour les organiser dans
n’importe quel ordre.
9. Choisissez le bouton Fermer pour le sélectionner. Ensuite, pour sélectionner le
reste des boutons en même temps, appuyez longuement sur la Ctrl touche et
choisissez-les également.

10. Dans la fenêtre Propriétés , définissez la propriété AutoSize sur True. Les boutons
sont redimensionnés pour s’adapter à leur texte.

Vous pouvez exécuter votre programme pour voir l’apparence des contrôles.
Sélectionnez la touche F5, sélectionnez Déboguer>Démarrer le débogage, ou
sélectionnez le bouton Démarrer. Les boutons que vous avez ajoutés ne font rien pour
le moment.

Modifier les noms des contrôles


Il existe quatre boutons sur votre formulaire, nommés bouton1, bouton2, bouton3et
bouton4 en C#. Dans Visual Basic, la première lettre par défaut de n’importe quel nom
de contrôle est majuscule, de sorte que les boutons sont nommés Button1, Button2,
Button3et Button4. Utilisez ces étapes pour leur donner des noms plus informatifs.

1. Dans le formulaire, choisissez le bouton Fermer . Si tous les boutons sont encore
sélectionnés, appuyez sur la touche Échap pour annuler la sélection.

2. Dans la fenêtre Propriétés, recherchez (Nom). Remplacez le nom par closeButton.

L’IDE n’accepte pas les noms qui contiennent des espaces.


3. Renommez les trois autres boutons en backgroundButton, clearButtonet
showButton. Vous pouvez vérifier les noms en choisissant la liste déroulante du
sélecteur de contrôle dans la fenêtre Propriétés. Les nouveaux noms de boutons
s’affichent.

Vous pouvez modifier le nom de n’importe quel contrôle, tel que TableLayoutPanel ou
CheckBox.

Ajouter des composants de boîte de dialogue


Votre application peut ouvrir des fichiers image et choisir une couleur d’arrière-plan à
l’aide de composants. Un composant est semblable à un contrôle. Vous utilisez la boîte
à outils pour ajouter un composant à votre formulaire. Vous définissez ses propriétés à
l’aide de la fenêtre Propriétés.

Contrairement à un contrôle, l’ajout d’un composant à votre formulaire n’ajoute pas


d’élément visible. Au lieu de cela, il fournit certains comportements que vous pouvez
déclencher avec du code. Par exemple, il s’agit d’un composant qui ouvre une boîte de
dialogue Ouvrir un fichier .

Dans cette section, vous ajoutez un composant OpenFileDialog et un composant


ColorDialog à votre formulaire.

1. Sélectionnez le Concepteur Windows Forms (Form1.cs [Design]). Ouvrez ensuite la


Boîte à outils et sélectionnez le groupe Boîtes de dialogue.

2. Double-cliquez sur OpenFileDialog pour ajouter un composant appelé


openFileDialog1 à votre formulaire.

3. Double-cliquez sur ColorDialog pour ajouter un composant appelé colorDialog1.


Les composants apparaissent en bas de Concepteur Windows Forms en tant
qu’icônes.

4. Choisissez l’icône openFileDialog1 et définissez deux propriétés :

Définissez la propriété Filter sur la valeur suivante :

Console
JPEG Files (*.jpg)|*.jpg|PNG Files (*.png)|*.png|BMP Files
(*.bmp)|*.bmp|All files (*.*)|*.*

Définissez la propriété Title sur la valeur suivante : Sélectionnez un fichier


image.

Les paramètres de propriété filtre spécifient les types affichés par la boîte de
dialogue Sélectionner une image.

Étape suivante
Passez au tutoriel suivant pour apprendre à ajouter du code à votre application.

Tutoriel 3 : Ajouter du code à votre visionneuse d’images

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Ajouter du code à l’application
Windows Forms de visionneuse
d’images (.NET Framework)
Article • 03/02/2025

Dans cette série de trois didacticiels, vous créez une application Windows Forms qui
charge une image et l’affiche. Visual Studio Integrated Design Environment (IDE) fournit
les outils dont vous avez besoin pour créer l’application.

Les contrôles utilisent du code C# ou Visual Basic pour effectuer les actions associées.

Dans ce troisième tutoriel, vous allez apprendre à :

" Ajouter des gestionnaires d’événements pour vos contrôles


" Écrire du code pour ouvrir une boîte de dialogue
" Écrire du code pour les autres contrôles
" Exécuter votre application

Pour créer une application Windows Forms avec .NET, suivez le tutoriel Créer une
application Windows Forms avec .NET. Pour en savoir plus, consultez le guide Desktop
sur Windows Forms .NET.

Conditions préalables
Ce didacticiel s’appuie sur les didacticiels précédents, Créer une application
visionneuse d’images et Ajouter des contrôles d’interface utilisateur à la
visionneuse d’images. Effectuez-les tout d’abord et commencez par le projet que
vous avez créé pour ces didacticiels.

Ajouter des gestionnaires d’événements pour


vos contrôles
Dans cette section, ajoutez des gestionnaires d’événements pour les contrôles que vous
avez ajoutés dans le deuxième didacticiel, Ajouter des contrôles à une application de
visionneuse d’images. Votre application appelle un gestionnaire d’événements
lorsqu’une action a lieu, par exemple en sélectionnant un bouton.

1. Ouvrez Visual Studio. Votre projet Visionneuse d’images s’affiche sous Ouvrir
récent.
2. Dans le Designer Windows Forms, double-cliquez sur le bouton Afficher une
image. À la place, vous pouvez sélectionner le bouton Afficher une image dans le
formulaire, puis appuyer sur Entrée.

L’IDE Visual Studio ouvre un onglet dans la fenêtre principale. Pour C#, l’onglet est
nommé Form1.cs. Si vous utilisez Visual Basic, l’onglet est nommé Form1.vb.

Cet onglet affiche le fichier de code derrière le formulaire.

7 Notes

Votre onglet Form1.vb peut afficher showButton comme ShowButton.

3. Concentrez-vous sur cette partie du code.

C#

C#
private void showButton_Click(object sender, EventArgs e)
{
}

4. Choisissez à nouveau l’onglet Concepteur Windows Forms, puis double-cliquez


sur le bouton Effacer l’image pour ouvrir son code. Répétez l'action pour les deux
boutons restants. Chaque fois, l’IDE Visual Studio ajoute une nouvelle méthode au
fichier de code du formulaire.

5. Double-cliquez sur le contrôle CheckBox dans Concepteur Windows Forms pour


ajouter une méthode checkBox1_CheckedChanged() . Lorsque vous activez ou
désactivez la case à cocher, elle appelle cette méthode.

L’extrait de code suivant montre le nouveau code que vous voyez dans l’éditeur de
code.

C#

C#

private void clearButton_Click(object sender, EventArgs e)


{
}

private void backgroundButton_Click(object sender, EventArgs e)


{
}

private void closeButton_Click(object sender, EventArgs e)


{
}

private void checkBox1_CheckedChanged(object sender, EventArgs e)


{
}

Les méthodes, y compris les gestionnaires d’événements, peuvent avoir n’importe quel
nom souhaité. Lorsque vous ajoutez un gestionnaire d’événements avec l’IDE, il crée un
nom en fonction du nom du contrôle et de l’événement géré.

Par exemple, l’événement Click d’un bouton nommé showButton est appelé
showButton_Click() ou ShowButton_Click() . Si vous souhaitez modifier un nom de
variable de code, cliquez avec le bouton droit sur la variable dans le code, puis
choisissez Refactoriser>Renommer. Cette action renomme toutes les instances de cette
variable dans le code. Pour plus d’informations, consultez Renommer la refactorisation.

Écrire du code pour ouvrir une boîte de


dialogue
Le bouton Afficher une image utilise le composant OpenFileDialog pour afficher un
fichier image. Cette procédure ajoute le code utilisé pour appeler ce composant.

L’IDE Visual Studio offre un outil puissant appelé IntelliSense. Lorsque vous tapez,
IntelliSense suggère du code possible.

1. Dans Windows Forms Designer, double-cliquez sur le bouton Afficher une image.
L’IDE déplace votre curseur à l’intérieur de la méthode showButton_Click() ou
ShowButton_Click() .

2. Tapez un i sur la ligne vierge entre les deux accolades { } ou entre Private Sub...
et End Sub . Une fenêtre IntelliSense s’ouvre.

3. La fenêtre IntelliSense doit mettre en surbrillance le mot if . Sélectionnez la


touche Tab, deux fois, pour insérer l’extrait de code if .

4. Sélectionnez true, puis tapez op pour le remplacer pour C# ou Op pour Visual


Basic.

IntelliSense affiche openFileDialog1.


5. Sélectionnez l'onglet pour ajouter openFileDialog1.

6. Tapez un point ( . ) ou un point, juste après openFileDialog1. IntelliSense fournit


toutes les propriétés et méthodes du composant OpenFileDialog. Commencez à
taper ShowDialog et sélectionnez l'onglet . La méthode ShowDialog() affiche la
boîte de dialogue Ouvrir un fichier.

7. Ajoutez des parenthèses () immédiatement après le « g » dans ShowDialog . Votre


code doit être openFileDialog1.ShowDialog() .

8. Pour C#, ajoutez un espace, puis ajoutez deux signes égaux ( == ). Pour Visual Basic,
ajoutez un espace, puis utilisez un signe égal unique ( = ).

9. Ajoutez un autre espace. Utilisez IntelliSense pour entrer DialogResult.

10. Tapez un point pour ouvrir la fenêtre IntelliSense de la valeur DialogResult. Tapez
la lettre O et appuyez sur la touche Tab pour insérer OK.

7 Notes

La première ligne de code doit être terminée. Pour C#, il doit être similaire à
ce qui suit.

if (openFileDialog1.ShowDialog() == DialogResult.OK)

Pour Visual Basic, il doit s’agir des éléments suivants.

If OpenFileDialog1.ShowDialog() = DialogResult.OK Then

11. Ajoutez la ligne de code suivante.

C#

C#

pictureBox1.Load(openFileDialog1.FileName);

Vous pouvez copier et coller ou utiliser IntelliSense pour l’ajouter. Votre méthode
de showButton_Click() finale doit ressembler au code suivant.

C#
C#

private void showButton_Click(object sender, EventArgs e)


{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pictureBox1.Load(openFileDialog1.FileName);
}
}

1. Ajoutez le commentaire suivant à votre code.

C#

C#

private void showButton_Click(object sender, EventArgs e)


{
// Show the Open File dialog. If the user clicks OK, load the
// picture that the user chose.
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pictureBox1.Load(openFileDialog1.FileName);
}
}

Il est recommandé de toujours commenter votre code. Les commentaires de code


facilitent la compréhension et la maintenance de votre code à l’avenir.

Écrire du code pour les autres contrôles


Si vous exécutez votre application maintenant, vous pouvez sélectionner Afficher une
image. L’Observateur d’images ouvre la boîte de dialogue Ouvrir un fichier, où vous
pouvez sélectionner une image à afficher.

Dans cette section, ajoutez le code pour les autres gestionnaires d’événements.

1. Dans le Concepteur Windows Forms, double-cliquez sur le bouton Effacer l’image.


Pour C#, ajoutez le code dans les accolades. Pour Visual Basic, ajoutez le code
entre Private Sub et End Sub .
C#

C#

private void clearButton_Click(object sender, EventArgs e)


{
// Clear the picture.
pictureBox1.Image = null;
}

2. Double-cliquez sur le bouton « Définir la couleur d'arrière-plan et ajoutez le code.

C#

C#

private void backgroundButton_Click(object sender, EventArgs e)


{
// Show the color dialog box. If the user clicks OK, change the
// PictureBox control's background to the color the user chose.
if (colorDialog1.ShowDialog() == DialogResult.OK)
pictureBox1.BackColor = colorDialog1.Color;
}

3. Double-cliquez sur le bouton Fermer et ajoutez le code.

C#

C#

private void closeButton_Click(object sender, EventArgs e)


{
// Close the form.
this.Close();
}

4. Double-cliquez sur la case Stretch et ajoutez le code.

C#

C#
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
// If the user selects the Stretch check box,
// change the PictureBox's
// SizeMode property to "Stretch". If the user clears
// the check box, change it to "Normal".
if (checkBox1.Checked)
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
else
pictureBox1.SizeMode = PictureBoxSizeMode.Normal;
}

Exécuter votre application


Vous pouvez exécuter votre application à tout moment pendant que vous l’écrivez. Une
fois que vous avez ajouté le code dans la section précédente, la Visionneuse d’images
est terminée. Comme dans les didacticiels précédents, utilisez l’une des méthodes
suivantes pour exécuter votre application :

Sélectionnez la touche F5.


Dans la barre de menus, sélectionnez Débogage>Démarrer le débogage.
Dans la barre d’outils, sélectionnez le bouton Démarrer.

Une fenêtre avec le titre Visionneuse d’images s’affiche. Testez tous les contrôles.

1. Sélectionnez le bouton Définir la couleur d’arrière-plan. La boîte de dialogue


Couleur s’ouvre.
2. Choisissez une couleur pour définir la couleur d’arrière-plan.

3. Sélectionnez Afficher une image pour afficher une image.

4. Sélectionnez et désélectionnez Stretch.

5. Choisissez le bouton Effacer l’image pour vous assurer que l’affichage s’efface.
6. Sélectionnez Fermer pour quitter l’application.

Félicitations! Vous avez terminé cette série de tutoriels. Vous avez effectué ces tâches de
programmation et de conception dans l’IDE Visual Studio :

Création d’un projet Visual Studio qui utilise Windows Forms


Ajout de la mise en page pour l'application de visionnage d'images
Boutons ajoutés et case à cocher
Boîtes de dialogue ajoutées
Ajout de gestionnaires d’événements pour vos contrôles
Écriture de code C# ou Visual Basic pour gérer les événements

Étape suivante
Poursuivez l’apprentissage avec une autre série de tutoriels sur la création d’un
questionnaire mathématique chronologique.

Tutoriel 2 : Créer un questionnaire mathématique chronologique

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer un questionnaire
mathématique WinForms
Article • 03/02/2025

Dans cette série de quatre tutoriels, vous créez un questionnaire mathématique. Le


questionnaire contient quatre problèmes mathématiques aléatoires auxquels un
participant tente de répondre dans un délai spécifié.

L’environnement de développement intégré (IDE) visual Studio fournit les outils dont
vous avez besoin pour créer l’application. Pour en savoir plus sur cet IDE, consultez
Bienvenue dans l’IDE Visual Studio.

Dans ce premier tutoriel, vous allez apprendre à :

" Créez un projet Visual Studio qui utilise Windows Forms.


" Ajoutez des étiquettes, un bouton et d’autres contrôles à un formulaire.
" Définissez les propriétés des contrôles.
" Enregistrez et exécutez votre projet.

Conditions préalables
Vous avez besoin de Visual Studio pour suivre ce didacticiel. Visitez la page de
téléchargements Visual Studio pour une version gratuite.

7 Notes

Ce tutoriel nécessite le modèle de projet application Windows Forms (.NET


Framework). Lors de l'installation, sélectionnez la charge de travail de
développement de bureau .NET :

Si Visual Studio est déjà installé et que vous devez l’ajouter, dans le menu,
sélectionnez Outils>Obtenir des outils et des fonctionnalités, ou dans la fenêtre
Créer un projet, sélectionnez l'Installer d’autres outils et fonctionnalités lien.
Créer votre projet Windows Forms
Lorsque vous créez un questionnaire mathématique, la première étape consiste à créer
un projet d’application Windows Forms.

1. Ouvrez Visual Studio.

2. Dans la fenêtre de démarrage, sélectionnez Créer un projet.

3. Dans la fenêtre Créer un projet, recherchez Windows Forms . Sélectionnez ensuite


Desktop dans la liste type de projet.

4. Sélectionnez le modèle Application Windows Forms (.NET Framework) pour C#


ou Visual Basic, puis sélectionnez Suivant.
5. Dans la fenêtre Configurer votre nouveau projet, nommez votre projet MathQuiz,
puis sélectionnez Créer.

Visual Studio crée une solution pour votre application. Une solution est un conteneur
pour tous les projets et fichiers dont votre application a besoin.

Définir les propriétés du formulaire


Une fois que vous avez sélectionné votre modèle et nommez votre fichier, Visual Studio
ouvre un formulaire pour vous. Cette section vous montre comment modifier certaines
propriétés de formulaire.

1. Dans votre projet, sélectionnez Windows Forms Designer. L’onglet Concepteur est
étiqueté Form1.cs [Création] pour C# ou Form1.vb [Création] pour Visual Basic.

2. Sélectionnez le formulaire, Form1.

3. La fenêtre Propriétés affiche désormais les propriétés du formulaire. Cette fenêtre


se trouve généralement dans le coin inférieur droit de Visual Studio. Si vous ne
voyez pas Propriétés, sélectionnez Affichage>Fenêtre Propriétés.

4. Recherchez la propriété Text dans la fenêtre propriétés . Selon la façon dont la liste
est triée, vous devrez peut-être faire défiler vers le bas. Entrez la valeur
Questionnaire mathématique pour la valeur de Texte, puis sélectionnez Entrée.

Votre formulaire comporte désormais le texte « Questionnaire mathématique »


dans sa barre de titre.
7 Notes

Vous pouvez afficher les propriétés par catégorie ou par ordre alphabétique.
Utilisez les boutons de la fenêtre Propriétés pour basculer d'avant en arrière.

5. Remplacez la taille du formulaire par 500 pixels de large par 400 pixels de hauteur.

Vous pouvez redimensionner le formulaire en faisant glisser ses bords ou en


faisant glisser la poignée jusqu’à ce que la taille correcte apparaisse en tant que
valeur Taille dans la fenêtre propriétés . La poignée de glissement est un petit carré
blanc situé dans le coin inférieur droit du formulaire. Vous pouvez également
redimensionner le formulaire en modifiant les valeurs de la propriété Size.

6. Modifiez la valeur de la propriété FormBorderStyle en Fixed3D et définissez la


propriété MaximizeBox sur False.

Ces valeurs empêchent les participants au quiz de redimensionner le formulaire.

Créer la zone de temps restant


Le questionnaire mathématique contient une zone dans le coin supérieur droit. Cette
zone affiche le nombre de secondes qui restent dans le questionnaire. Cette section
vous montre comment utiliser une étiquette pour cette zone. Vous ajoutez du code pour
le minuteur de compte à rebours dans un didacticiel ultérieur de cette série.

1. Sur le côté gauche de l’IDE Visual Studio, sélectionnez l’onglet boîte à outils. Si
vous ne voyez pas la boîte à outils, sélectionnez Afficher>Boîte à outils dans la
barre de menus ou Ctrl+Alt+X.

2. Sélectionnez le contrôle Label dans la boîte à outils , puis faites-le glisser sur le
formulaire.

3. Dans la zone Propriétés, définissez les propriétés suivantes pour l’étiquette :

Définissez le (Nom) sur timeLabel.


Modifiez AutoSize dans False afin de pouvoir redimensionner la boîte.
Remplacez BorderStyle par FixedSingle pour dessiner une ligne autour de la
zone.
Définissez le taille sur 200, 30.
Sélectionnez la propriété Texte, puis sélectionnez la touche Retour arrière
pour effacer la valeur Texte.
Sélectionnez le signe plus (+) en regard de la propriété Police, puis définissez
la taille sur 15,75.

4. Déplacez l’étiquette dans le coin supérieur droit du formulaire. Lorsque des lignes
d’espaceur bleues apparaissent, utilisez-les pour positionner le contrôle sur le
formulaire.

5. Ajoutez un autre contrôle Label à partir de la boîte à outils , puis définissez sa taille
de police sur 15,75.

6. Affectez la propriété de Texte de cette étiquette sur Temps restant.

7. Déplacez l’étiquette de sorte qu’elle s’aligne vers la gauche de l’étiquette


timeLabel .

Ajouter des contrôles pour l’exercice d’addition


La première partie du questionnaire est un problème d’ajout. Cette section vous montre
comment utiliser des étiquettes pour afficher ce problème.

1. Ajoutez un contrôle d’étiquette Label à partir de la Boîte à outils vers le formulaire.

2. Dans la zone Propriétés, définissez les propriétés suivantes pour l’étiquette :

Définissez Texte sur ? (point d’interrogation).


Définissez AutoSize sur False.
Définissez la taille sur 60, 50.
Définissez la taille de police sur 18.
Définissez TextAlign sur MiddleCenter.
Définissez Location sur 50, 75 pour positionner le contrôle dans le formulaire.
Définissez (Name) sur plusLeftLabel.

3. Dans le formulaire, sélectionnez l’étiquette plusLeftLabel que vous avez créée.


Copiez l’étiquette en sélectionnant Modifier>Copier ou Ctrl+C.

4. Collez l’étiquette dans le formulaire trois fois en sélectionnant Modifier>Coller ou


Ctrl+V trois fois.
5. Organisez les trois nouvelles étiquettes afin qu’elles soient dans une ligne à droite
de l’étiquette plusLeftLabel.

6. Définissez la propriété Texte de la seconde étiquette sur + (signe plus).

7. Définissez la propriété (Name) de l’étiquette sur plusRightLabel.

8. Définissez la propriété Texte sur = (signe égal).

9. Ajoutez un contrôle NumericUpDown à partir de la boîte à outils au formulaire.


Vous en apprendrez plus sur ce type de contrôle ultérieurement.

10. Dans la zone Propriétés, définissez les propriétés suivantes pour le contrôle
NumericUpDown :

Définissez la taille de police sur 18.


Sous MaximumSize, définissez la largeur sur 100.
Définissez le (Name) sur somme.

11. Alignez le contrôle NumericUpDown sur les contrôles d’étiquettes du problème


d'addition.

Ajouter des contrôles pour les problèmes de


soustraction, de multiplication et de division
Ensuite, ajoutez des étiquettes au formulaire pour les problèmes mathématiques
restants.

1. Copiez les quatre contrôles Label et le contrôle NumericUpDown que vous avez
créé pour le problème d’ajout. Collez-les dans le formulaire.

2. Déplacez les nouveaux contrôles pour les aligner sous les contrôles d’ajout.
3. Dans la zone Propriétés, définissez les propriétés suivantes pour les nouveaux
contrôles :

Définissez le (Nom) de la première étiquette de point d’interrogation sur


minusLeftLabel.
Définissez le texte de la deuxième étiquette sur - (signe moins).
Définissez le (Nom) de la deuxième étiquette de point d’interrogation sur
minusRightLabel.
Définissez le (Nom) du contrôle NumericUpDown sur différence.

4. Copiez les contrôles d’ajout et collez-les deux fois plus dans le formulaire.

5. Pour la troisième ligne :

Définissez le (Nom) de la première étiquette de point d’interrogation sur


timesLeftLabel.
Définissez le Texte de la deuxième étiquette sur × (signe de multiplication).
Vous pouvez copier le signe de multiplication à partir de ce didacticiel et le
coller dans le formulaire.
Définissez le (Nom) de la deuxième étiquette de point d’interrogation sur
timesRightLabel.
Définissez le (Nom) du contrôle NumericUpDown sur produit.

6. Pour la quatrième ligne :

Définissez le (Nom) de la première étiquette de point d’interrogation sur


dividedLeftLabel.
Définissez le texte de la deuxième étiquette sur ÷ (signe de division). Vous
pouvez copier le signe de division à partir de ce didacticiel et le coller dans le
formulaire.
Définissez le (Nom) de la deuxième étiquette de point d’interrogation sur
dividedRightLabel.
Définissez le (Nom) du contrôle NumericUpDown sur quotient.
Ajouter un bouton Démarrer et définir l'ordre
des index de tabulation
Cette section vous montre comment ajouter un bouton démarrer. Vous spécifiez
également l’ordre de tabulation des contrôles. Cet ordre détermine la façon dont
l'utilisateur du quiz passe d’un contrôle à l’autre à l’aide de la touche Tabulation.

1. Ajoutez un contrôle Button à partir de la boîte à outils au formulaire.

2. Dans la zone Propriétés, définissez les propriétés suivantes du bouton :

Définissez le (Nom) sur startButton.


Définissez le Texte sur Démarrer le questionnaire.
Définissez la taille de police sur 14.
Définissez AutoSize sur True, ce qui entraîne le redimensionnement
automatique du bouton pour qu’il s’adapte au texte.
Définissez TabIndex sur 0. Cette valeur fait du bouton Démarrer le premier
contrôle recevant le focus.

3. Centrez le bouton près du bas du formulaire.


4. Dans la zone Propriétés , définissez la propriété TabIndex de chaque contrôle
NumericUpDown :

Définissez le TabIndex du contrôle somme sur 1.


Définissez le tabIndex du contrôle de différence de sur 2.
Définissez le TabIndex du contrôle produit sur 3.
Définissez le TabIndex du contrôle quotient sur 4.

Exécuter votre application


Les problèmes mathématiques ne fonctionnent pas encore sur votre questionnaire.
Toutefois, vous pouvez toujours exécuter votre application pour vérifier si les valeurs de
TabIndex fonctionnent comme vous vous y attendez.

1. Utilisez l’une des méthodes suivantes pour enregistrer votre application :

Sélectionnez Ctrl+Maj+S.
Dans la barre de menus, sélectionnez Fichier>Enregistrer tout.
Dans la barre d’outils, sélectionnez le bouton Enregistrer tout.

2. Utilisez l’une des méthodes suivantes pour exécuter votre application :

Sélectionnez F5 .
Dans la barre de menus, sélectionnez Débogage>Démarrer le débogage.
Dans la barre d’outils, sélectionnez le bouton Démarrer.

3. Sélectionnez la touche Onglet plusieurs fois pour voir comment le focus se


déplace d’un contrôle à l’autre.

Étape suivante
Passez au tutoriel suivant pour ajouter des problèmes mathématiques aléatoires et un
gestionnaire d’événements à votre questionnaire mathématique.

Tutoriel 2 : Ajouter des problèmes mathématiques à une application WinForms de


quiz mathématique

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Ajouter des problèmes
mathématiques à une application
WinForms de questionnaire
mathématique
Article • 03/02/2025

Dans cette série de quatre didacticiels, vous allez créer un questionnaire mathématique.
Le quiz contient quatre problèmes de mathématiques aléatoires auxquels le participant
tente de répondre dans un délai spécifié.

Les contrôles utilisent du code C# ou Visual Basic. Dans ce deuxième tutoriel, vous
rendez le questionnaire difficile en ajoutant du code pour les problèmes mathématiques
basés sur des nombres aléatoires. Vous créez également une méthode nommée
StartTheQuiz() pour résoudre les problèmes.

Dans ce deuxième tutoriel, vous allez apprendre à :

" Écrivez du code pour créer des objets aléatoires à utiliser dans des problèmes
mathématiques.
" Ajoutez un gestionnaire d’événements pour le bouton Démarrer.
" Écrivez du code pour démarrer le questionnaire.

Conditions préalables
Ce didacticiel s’appuie sur un didacticiel précédent, Créer un questionnaire
mathématique winForms. Si vous n'avez pas terminé ce didacticiel, complétez-le
d'abord.

Créer un problème d’ajout aléatoire


1. Dans votre projet Visual Studio, sélectionnez Concepteur Windows Forms.

2. Sélectionnez le formulaire, Form1.

3. Dans la barre de menus, sélectionnez Afficher>Code. Form1.cs ou Form1.vb


apparaît, selon le langage de programmation que vous utilisez, afin de pouvoir
afficher le code derrière le formulaire.
4. Créez un objet Random en ajoutant une instruction new en haut du code dans
Form1.cs ou Form1.vb.

C#

C#

public partial class Form1 : Form


{
// Create a Random object called randomizer
// to generate random numbers.
Random randomizer = new Random();

Vous pouvez utiliser des instructions new comme celle-ci pour créer des boutons,
étiquettes, panneaux, OpenFileDialogs, ColorDialogs, SoundPlayers, Randoms et même
des formulaires. Ces éléments sont appelés objets.

Lorsque vous exécutez votre programme, le formulaire est démarré. Le code qui le sous-
tend crée un objet Random et le nomme randomizer.

Votre questionnaire a besoin de variables pour stocker les nombres aléatoires qu’il crée
pour chaque problème. Avant d’utiliser des variables, vous les déclarez, ce qui signifie
répertorier leurs noms et leurs types de données.

1. Ajoutez deux variables entières au formulaire et nommez-les addend1 et addend2


dans Form1.cs ou Form1.vb.

7 Notes

Une variable entière est appelée int en C# ou un entier en Visual Basic. Ce


type de variable stocke un nombre positif ou négatif de -2147483648 par
2147483647 et ne peut stocker que des nombres entiers, et non des
décimales.

Vous utilisez une syntaxe similaire pour ajouter une variable entière comme vous
l’avez fait pour ajouter l’objet Random, comme le montre le code suivant.

C#

C#
// Create a Random object called randomizer
// to generate random numbers.
Random randomizer = new Random();

// These integer variables store the numbers


// for the addition problem.
int addend1;
int addend2;

1. Ajoutez une méthode nommée StartTheQuiz() Form1.cs ou Form1.vb. Cette


méthode utilise la méthode Next() de l’objet random pour générer des nombres
aléatoires pour les étiquettes. StartTheQuiz() remplit par la suite tous les
problèmes et démarre le minuteur. Vous devez donc ajouter ces informations au
commentaire récapitulatif. La fonction doit ressembler au code suivant.

C#

C#

/// <summary>
/// Start the quiz by filling in all of the problems
/// and starting the timer.
/// </summary>
public void StartTheQuiz()
{
// Fill in the addition problem.
// Generate two random numbers to add.
// Store the values in the variables 'addend1' and 'addend2'.
addend1 = randomizer.Next(51);
addend2 = randomizer.Next(51);

// Convert the two randomly generated numbers


// into strings so that they can be displayed
// in the label controls.
plusLeftLabel.Text = addend1.ToString();
plusRightLabel.Text = addend2.ToString();

// 'sum' is the name of the NumericUpDown control.


// This step makes sure its value is zero before
// adding any values to it.
sum.Value = 0;
}
Lorsque vous utilisez la méthode Next() avec un objet random, par exemple lorsque
vous appelez randomizer.Next(51) , vous obtenez un nombre aléatoire inférieur à 51 ou
compris entre 0 et 50. Ce code appelle randomizer.Next(51) afin que les deux nombres
aléatoires s’ajoutent à une réponse comprise entre 0 et 100.

Regardez de plus près ces déclarations.

C#

C#

plusLeftLabel.Text = addend1.ToString();
plusRightLabel.Text = addend2.ToString();

Ces instructions définissent les propriétés Text de plusLeftLabel et plusRightLabel afin


qu’elles affichent les deux nombres aléatoires. Les contrôles d’étiquette affichent des
valeurs au format texte et, en programmation, les chaînes contiennent du texte. La
méthode ToString() de chaque entier convertit l’entier en texte qu’une étiquette peut
afficher.

Créer des problèmes de soustraction, de


multiplication et de division aléatoires
L’étape suivante consiste à déclarer des variables et à fournir des valeurs aléatoires pour
les autres problèmes mathématiques.

1. Ajoutez des variables entières pour les problèmes mathématiques restants à votre
formulaire, après les variables de problème d’ajout. Le code dans Form1.cs ou
Form1.vb doit ressembler à l’exemple suivant.

C#

C#

public partial class Form1 : Form


{
// Create a Random object called randomizer
// to generate random numbers.
Random randomizer = new Random();

// These integer variables store the numbers


// for the addition problem.
int addend1;
int addend2;

// These integer variables store the numbers


// for the subtraction problem.
int minuend;
int subtrahend;

// These integer variables store the numbers


// for the multiplication problem.
int multiplicand;
int multiplier;

// These integer variables store the numbers


// for the division problem.
int dividend;
int divisor;

1. Modifiez la méthode StartTheQuiz() dans Form1.cs ou Form1.vb en ajoutant le


code suivant, en commençant par le commentaire « Remplir le problème de
soustraction ».

C#

C#

/// <summary>
/// Start the quiz by filling in all of the problem
/// values and starting the timer.
/// </summary>
public void StartTheQuiz()
{
// Fill in the addition problem.
// Generate two random numbers to add.
// Store the values in the variables 'addend1' and 'addend2'.
addend1 = randomizer.Next(51);
addend2 = randomizer.Next(51);

// Convert the two randomly generated numbers


// into strings so that they can be displayed
// in the label controls.
plusLeftLabel.Text = addend1.ToString();
plusRightLabel.Text = addend2.ToString();

// 'sum' is the name of the NumericUpDown control.


// This step makes sure its value is zero before
// adding any values to it.
sum.Value = 0;
// Fill in the subtraction problem.
minuend = randomizer.Next(1, 101);
subtrahend = randomizer.Next(1, minuend);
minusLeftLabel.Text = minuend.ToString();
minusRightLabel.Text = subtrahend.ToString();
difference.Value = 0;

// Fill in the multiplication problem.


multiplicand = randomizer.Next(2, 11);
multiplier = randomizer.Next(2, 11);
timesLeftLabel.Text = multiplicand.ToString();
timesRightLabel.Text = multiplier.ToString();
product.Value = 0;

// Fill in the division problem.


divisor = randomizer.Next(2, 11);
int temporaryQuotient = randomizer.Next(2, 11);
dividend = divisor * temporaryQuotient;
dividedLeftLabel.Text = dividend.ToString();
dividedRightLabel.Text = divisor.ToString();
quotient.Value = 0;

Ce code utilise la méthode Next() de la classe Random un peu différemment de la façon


dont le problème d’ajout se produit. Lorsque vous attribuez à la méthode Next() deux
valeurs, il sélectionne un nombre aléatoire supérieur ou égal à la première valeur et
inférieur à la seconde.

En utilisant la méthode Next() avec deux arguments, vous pouvez vous assurer que le
problème de soustraction a une réponse positive, la réponse de multiplication est au
plus 100 et la réponse de division n’est pas une fraction.

Ajouter un gestionnaire d’événements au


bouton Démarrer
Dans cette section, vous ajoutez du code pour démarrer le questionnaire lorsque le
bouton démarrer est sélectionné. Le code qui s’exécute en réaction à un événement
comme une sélection de boutons est appelé gestionnaire d’événements.

1. Dans le Concepteur Windows Forms, double-cliquez sur le bouton Démarrer le


questionnaire, ou sélectionnez-le et appuyez sur Entrée. Le code du formulaire
s’affiche et une nouvelle méthode est visible.

Ces actions ajoutent un gestionnaire d’événements Click au bouton démarrer.


Lorsqu'un participant au quiz sélectionne ce bouton, l'application exécute le code
que vous ajouterez à cette nouvelle méthode.

2. Ajoutez les deux instructions suivantes pour que le gestionnaire d’événements


démarre le questionnaire.

C#

C#

private void startButton_Click(object sender, EventArgs e)


{
StartTheQuiz();
startButton.Enabled = false;
}

La première instruction appelle la nouvelle méthode StartTheQuiz() . La deuxième


instruction définit la propriété Enabled du contrôle startButton sur false afin que le
participant au quiz ne puisse pas sélectionner le bouton pendant un questionnaire.

Exécuter votre application


1. Enregistrez votre code.

2. Exécutez votre application, puis sélectionnez Démarrer le questionnaire. Des


problèmes mathématiques aléatoires apparaissent, comme le montre la capture
d’écran suivante.
Étapes suivantes
Passez au tutoriel suivant pour ajouter un minuteur à votre questionnaire mathématique
et vérifiez les réponses des utilisateurs.

Tutoriel 3 : Ajouter un contrôle de minuteur à un questionnaire mathématique


winForms

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Ajouter un minuteur à une
application WinForms de questionnaire
mathématique
Article • 13/02/2025

Dans cette série de quatre didacticiels, vous allez créer un questionnaire mathématique.
Le questionnaire contient quatre problèmes de mathématiques aléatoires que le
participant tente de résoudre dans un temps imparti.

Le questionnaire utilise un contrôle de minuteur. Le code derrière ce contrôle suit le


temps écoulé et vérifie les réponses du questionnaire.

Dans ce troisième tutoriel, vous allez apprendre à :

" Ajoutez un contrôle Minuteur à votre application Windows Forms.


" Ajoutez un gestionnaire d’événements pour le minuteur.
" Écrivez du code pour vérifier les réponses de l’utilisateur, afficher les messages et
renseigner les réponses appropriées.

Conditions préalables
Ce tutoriel s’appuie sur les didacticiels précédents, en commençant par Créer un
questionnaire mathématique winForms. Si vous n’avez pas terminé ces didacticiels,
commencez par les suivre.

Ajouter un minuteur de compte à rebours


Pour effectuer le suivi du temps pendant le questionnaire, vous utilisez un composant
Minuteur. Vous avez également besoin d’une variable pour stocker la durée restante.

1. Ajoutez une variable entière nommée timeLeft de la même façon que les variables
déclarées dans les didacticiels précédents. Placez la déclaration timeLeft juste
après les autres déclarations. Votre code doit ressembler à l’exemple suivant.

C#

C#

public partial class Form1 : Form


{
// Create a Random object called randomizer
// to generate random numbers.
Random randomizer = new Random();

// These integer variables store the numbers


// for the addition problem.
int addend1;
int addend2;

// These integer variables store the numbers


// for the subtraction problem.
int minuend;
int subtrahend;

// These integer variables store the numbers


// for the multiplication problem.
int multiplicand;
int multiplier;

// These integer variables store the numbers


// for the division problem.
int dividend;
int divisor;

// This integer variable keeps track of the


// remaining time.
int timeLeft;

2. Dans le Concepteur Windows Forms, déplacez un Timer contrôle depuis la


catégorie Composants de la Boîte à outils vers votre formulaire. Le contrôle
apparaît dans la zone grise en bas de la fenêtre de conception.

3. Dans le formulaire, sélectionnez l’icône minuteur que vous venez d’ajouter, puis
définissez sa propriété Interval sur 1000. Étant donné que cet intervalle est en
millisecondes, la valeur 1 000 entraîne l’augmentation d’un événement de Tick
toutes les secondes.

Vérifier les réponses


Étant donné que le minuteur déclenche un événement Tick toutes les secondes, il est
judicieux de vérifier le temps écoulé dans un gestionnaire d’événements Tick. Il est
également pratique de vérifier les réponses dans ce gestionnaire d’événements. Si le
temps s’est écoulé ou si les réponses sont correctes, le questionnaire doit se terminer.

Avant d’écrire ce gestionnaire d’événements, ajoutez une méthode appelée


CheckTheAnswer() pour déterminer si les réponses aux problèmes mathématiques sont
correctes. Cette méthode doit être conforme aux autres méthodes, telles que
StartTheQuiz() . Votre code doit ressembler à l’exemple suivant.

C#

C#

/// <summary>
/// Check the answers to see if the user got everything right.
/// </summary>
/// <returns>True if the answer's correct, false otherwise.</returns>
private bool CheckTheAnswer()
{
if ((addend1 + addend2 == sum.Value)
&& (minuend - subtrahend == difference.Value)
&& (multiplicand * multiplier == product.Value)
&& (dividend / divisor == quotient.Value))
return true;
else
return false;
}

Cette méthode détermine les réponses aux problèmes mathématiques et compare les
résultats aux valeurs des contrôles NumericUpDown. Dans ce code :

La version de Visual Basic utilise le mot clé Function au lieu du mot clé Sub
habituel, car cette méthode retourne une valeur.

Vous ne pouvez pas facilement entrer le signe de multiplication (×) ou le signe de


division (÷) à l’aide du clavier. Par conséquent, C# et Visual Basic acceptent un
astérisque ( * ) pour la multiplication et une barre oblique ( / ) pour la division.

En C#, && est l’opérateur logical and . En Visual Basic, l’opérateur équivalent est
AndAlso . Vous utilisez l’opérateur logical and pour vérifier si plusieurs conditions

sont vraies. Dans ce cas, si les valeurs sont toutes correctes, la méthode retourne
une valeur de true . Sinon, la méthode retourne une valeur de false .

L’instruction if utilise la propriété Value d’un contrôle NumericUpDown pour


accéder à la valeur actuelle du contrôle. Dans la section suivante, vous utilisez la
même propriété pour afficher la réponse correcte dans chaque contrôle.

Ajouter un gestionnaire d’événements au


minuteur
Maintenant que vous avez un moyen de vérifier les réponses, vous pouvez écrire le code
du gestionnaire d’événements Tick. Ce code s’exécute chaque seconde, lorsque le
minuteur déclenche un événement Tick. Ce gestionnaire d’événements vérifie les
réponses du quiz taker en appelant CheckTheAnswer() . Il vérifie également combien de
temps s’est écoulé dans le questionnaire.

1. Dans le formulaire, double-cliquez sur le contrôle Minuteur ou choisissez-le, puis


appuyez sur la touche Entrée. Ces actions ajoutent un gestionnaire d’événements
Tick. L’éditeur de code apparaît et affiche la méthode du gestionnaire Tick.

Pour C#, il ajoute une ligne de code dans le fichier de code Form1.Designer.cs qui
connecte le gestionnaire d’événements :

C#

timer1.Tick += new EventHandler(timer1_Tick);

Pour Visual Basic, il n’est pas nécessaire de cette ligne, mais le gestionnaire
d’événements contient un handles Timer1.Tick qui fait la même chose.

2. Ajoutez les instructions suivantes à la nouvelle méthode de gestionnaire


d’événements.

C#

C#

private void timer1_Tick(object sender, EventArgs e)


{
if (CheckTheAnswer())
{
// If CheckTheAnswer() returns true, then the user
// got the answer right. Stop the timer
// and show a MessageBox.
timer1.Stop();
MessageBox.Show("You got all the answers right!",
"Congratulations!");
startButton.Enabled = true;
}
else if (timeLeft > 0)
{
// If CheckTheAnswer() returns false, keep counting
// down. Decrease the time left by one second and
// display the new time left by updating the
// Time Left label.
timeLeft = timeLeft - 1;
timeLabel.Text = timeLeft + " seconds";
}
else
{
// If the user ran out of time, stop the timer, show
// a MessageBox, and fill in the answers.
timer1.Stop();
timeLabel.Text = "Time's up!";
MessageBox.Show("You didn't finish in time.", "Sorry!");
sum.Value = addend1 + addend2;
difference.Value = minuend - subtrahend;
product.Value = multiplicand * multiplier;
quotient.Value = dividend / divisor;
startButton.Enabled = true;
}
}

Chaque seconde du questionnaire, cette méthode s’exécute. Le code vérifie d’abord la


valeur retournée par CheckTheAnswer() .

Si toutes les réponses sont correctes, cette valeur est true et le questionnaire se
termine :
Le minuteur s’arrête.
Un message de félicitations s’affiche.
La propriété Enabled du contrôle startButton a la valeur true afin que la
personne interrogée puisse commencer un autre questionnaire.

Si CheckTheAnswer() retourne false , le code vérifie la valeur de timeLeft:


Si cette variable est supérieure à 0, le minuteur soustrait 1 de timeLeft. Il met
également à jour la propriété Text du contrôle timeLabel pour montrer au
participant du quiz combien de secondes il reste.
Si le temps est écoulé, la minuterie s'arrête et modifie le timeLabel en Temps
écoulé ! Une boîte de message annonce que le quiz est terminé et que les
réponses sont révélées. Le bouton Démarrer devient à nouveau disponible.

Démarrer le minuteur
Pour démarrer le minuteur au démarrage du questionnaire, ajoutez trois lignes à la fin
de la méthode StartTheQuiz() , comme l’illustre l’exemple suivant.

C#

C#
/// <summary>
/// Start the quiz by filling in all of the problem
/// values and starting the timer.
/// </summary>
public void StartTheQuiz()
{
// Fill in the addition problem.
// Generate two random numbers to add.
// Store the values in the variables 'addend1' and 'addend2'.
addend1 = randomizer.Next(51);
addend2 = randomizer.Next(51);

// Convert the two randomly generated numbers


// into strings so that they can be displayed
// in the label controls.
plusLeftLabel.Text = addend1.ToString();
plusRightLabel.Text = addend2.ToString();

// 'sum' is the name of the NumericUpDown control.


// This step makes sure its value is zero before
// adding any values to it.
sum.Value = 0;

// Fill in the subtraction problem.


minuend = randomizer.Next(1, 101);
subtrahend = randomizer.Next(1, minuend);
minusLeftLabel.Text = minuend.ToString();
minusRightLabel.Text = subtrahend.ToString();
difference.Value = 0;

// Fill in the multiplication problem.


multiplicand = randomizer.Next(2, 11);
multiplier = randomizer.Next(2, 11);
timesLeftLabel.Text = multiplicand.ToString();
timesRightLabel.Text = multiplier.ToString();
product.Value = 0;

// Fill in the division problem.


divisor = randomizer.Next(2, 11);
int temporaryQuotient = randomizer.Next(2, 11);
dividend = divisor * temporaryQuotient;
dividedLeftLabel.Text = dividend.ToString();
dividedRightLabel.Text = divisor.ToString();
quotient.Value = 0;

// Start the timer.


timeLeft = 30;
timeLabel.Text = "30 seconds";
timer1.Start();
}
Lorsque votre questionnaire démarre, ce code définit la variable timeLeft sur 30 et la
propriété Text du contrôle timeLabel sur 30 secondes. Ensuite, la méthode Start() du
contrôle Timer démarre le compte à rebours.

Exécuter votre application


1. Enregistrez votre programme et exécutez-le.

2. Sélectionnez Démarrer le questionnaire. Le minuteur commence à compter.


Lorsque le temps expire, le questionnaire se termine et les réponses s’affichent.

3. Démarrez un autre questionnaire et fournissez des réponses correctes aux


problèmes mathématiques. Lorsque vous répondez correctement dans la limite de
temps, une boîte de message s’ouvre, le bouton démarrer devient disponible et le
minuteur s’arrête.

Étape suivante
Passez au tutoriel suivant pour apprendre à personnaliser votre questionnaire
mathématique.

Tutoriel 4 : Personnaliser une application WinForms de questionnaire


mathématique
Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Personnaliser un questionnaire
mathématique WinForms
Article • 03/02/2025

Dans cette série de quatre didacticiels, vous allez créer un questionnaire mathématique.
Le questionnaire contient quatre problèmes de mathématiques aléatoires qu’un
participant doit résoudre dans un temps imparti.

Ce tutoriel vous montre comment améliorer votre questionnaire en désactivant les


valeurs par défaut et en personnalisant l’apparence des contrôles.

Dans ce tutoriel final, vous allez apprendre à :

" Ajoutez des gestionnaires d’événements pour effacer les valeurs de contrôle


NumericUpDown par défaut.
" Personnalisez le questionnaire.

Conditions préalables
Ce tutoriel s’appuie sur les didacticiels précédents, en commençant par Créer un
questionnaire mathématique winForms. Si vous n’avez pas terminé ces didacticiels,
commencez par les suivre.

Ajouter des gestionnaires d’événements pour


les contrôles NumericUpDown
Le questionnaire contient NumericUpDown des contrôles que les participants utilisent
pour entrer des nombres. Lorsque vous entrez une réponse, vous devez d’abord
sélectionner la valeur par défaut ou supprimer cette valeur manuellement. En ajoutant
un gestionnaire d’événements Enter, vous pouvez faciliter l’entrée des réponses. Ce
code sélectionne et efface la valeur actuelle dans chaque contrôle NumericUpDown dès
que le sélecteur de questionnaire le sélectionne et commence à entrer une autre valeur.

1. Sélectionnez le premier contrôle NumericUpDown sur le formulaire. Dans la boîte


de dialogue Propriétés , sélectionnez l’icône Événements dans la barre d’outils.
L’onglet Événements dans Propriétés affiche tous les événements auxquels vous
pouvez répondre pour l’élément que vous avez sélectionné dans le formulaire.
Dans ce cas, tous les événements répertoriés se rapportent au contrôle
NumericUpDown.

2. Sélectionnez l’événement Entrée, entrez answer_Enter, puis sélectionnez Entrée.

L’éditeur de code s’affiche et affiche le gestionnaire d’événements Entrée que vous


avez créé pour la somme du contrôle NumericUpDown.

3. Dans la méthode du gestionnaire d’événements answer_Enter, ajoutez le code


suivant :

C#

C#

private void answer_Enter(object sender, EventArgs e)


{
// Select the whole answer in the NumericUpDown control.
NumericUpDown answerBox = sender as NumericUpDown;

if (answerBox != null)
{
int lengthOfAnswer = answerBox.Value.ToString().Length;
answerBox.Select(0, lengthOfAnswer);
}
}

Dans ce code :

La première ligne déclare la méthode. Il inclut un paramètre nommé sender . En


C#, le paramètre est object sender . En Visual Basic, c’est sender As System.Object .
Ce paramètre fait référence à l’objet dont l’événement est déclenché, appelé
expéditeur. Dans ce cas, l’objet expéditeur est le contrôle NumericUpDown.
La première ligne à l'intérieur de la méthode convertit ou transforme l'expéditeur
d'un objet générique en un contrôle NumericUpDown. Cette ligne affecte
également le nom answerBox au contrôle NumericUpDown. Tous les contrôles
NumericUpDown sur le formulaire utiliseront cette méthode, et pas seulement
celui du problème d'addition.
La ligne suivante vérifie si answerBox a été correctement converti en tant que
contrôle NumericUpDown.
La première ligne à l’intérieur de l’instruction if détermine la longueur de la
réponse qui se trouve actuellement dans le contrôle NumericUpDown.
La deuxième ligne à l’intérieur de l’instruction if utilise la longueur de réponse
pour sélectionner la valeur actuelle dans le contrôle.

Lorsque le participant au questionnaire sélectionne le contrôle, Visual Studio déclenche


cet événement. Ce code sélectionne la réponse actuelle. Dès que le participant au quiz
commence à saisir une réponse différente, la réponse actuelle est effacée et remplacée
par la nouvelle réponse.

1. Dans Concepteur Windows Forms, sélectionnez de nouveau le contrôle


NumericUpDown du problème d’addition.

2. Dans la page Événements de la boîte de dialogue Propriétés, recherchez


l’événement de Clic, puis sélectionnez answer_Enter dans le menu déroulant. Ce
gestionnaire d’événements est celui que vous venez d’ajouter.

3. Dans Concepteur Windows Forms, sélectionnez le contrôle NumericUpDown du


problème de soustraction.

4. Dans la page Événements de la boîte de dialogue Propriétés, recherchez


l’événement Entrer, puis sélectionnez answer_Enter dans le menu déroulant. Ce
gestionnaire d’événements est celui que vous venez d’ajouter. Répétez cette étape
pour l’événement Click.

5. Répétez les deux étapes précédentes pour les contrôles NumericUpDown de


multiplication et de division.

Exécuter votre application


1. Enregistrez votre programme et exécutez-le.

2. Démarrez un questionnaire, puis sélectionnez un contrôle NumericUpDown. La


valeur existante est automatiquement sélectionnée, puis effacée lorsque vous
commencez à entrer une autre valeur.
Personnaliser votre questionnaire
Dans cette dernière partie du tutoriel, vous allez explorer quelques façons de
personnaliser le questionnaire et de développer ce que vous avez appris.

Modifier la couleur d’une étiquette


Utilisez la propriété BackColor du contrôle timeLabel pour changer cette étiquette
en rouge lorsque seulement cinq secondes restent dans un questionnaire.

C#

C#

timeLabel.BackColor = Color.Red;

Réinitialisez la couleur lorsque le questionnaire est terminé.

Diffusez un son pour obtenir une réponse correcte


Donnez au participant du quiz un indice en jouant un son lorsque la réponse correcte
est entrée dans un contrôle NumericUpDown. Pour implémenter cette fonctionnalité,
écrivez un gestionnaire d’événements pour l’événement ValueChanged de chaque
contrôle. Ce type d’événement se déclenche chaque fois qu’un participant au quiz
change la valeur du contrôle.

Étapes suivantes
Félicitations! Vous avez terminé cette série de tutoriels. Vous avez effectué ces tâches de
programmation et de conception dans l’IDE Visual Studio :

Création d’un projet Visual Studio qui utilise Windows Forms


Ajout d’étiquettes, d’un bouton et de contrôles NumericUpDown
Ajout d’un minuteur
Configurer des gestionnaires d’événements pour vos contrôles
Écriture de code C# ou Visual Basic pour gérer les événements

Poursuivez l’apprentissage avec une autre série de tutoriels sur la création d’un jeu
correspondant.

Tutoriel 3 : Créer un jeu correspondant

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Créer une application de jeu
de correspondance Windows Forms
Article • 03/02/2025

Dans cette série de quatre tutoriels, vous créez un jeu correspondant. Le joueur associe
les paires d’icônes masquées.

Utilisez ces didacticiels pour en savoir plus sur les tâches suivantes dans l’environnement
de développement intégré Visual Studio (IDE) :

Stockez des objets, tels que des icônes, dans un objet List<T>.
Utilisez une boucle foreach en C# ou une boucle For Each en Visual Basic pour
effectuer une itération dans des éléments d’une liste.
Effectuez le suivi de l’état d’un formulaire à l’aide de variables de référence.
Créez un gestionnaire d’événements pour répondre aux événements que vous
pouvez utiliser avec plusieurs objets.
Créez un minuteur qui compte et déclenche un événement exactement une fois
qu’il a démarré.

Lorsque vous avez terminé, vous aurez un jeu complet.


Dans ce premier tutoriel, vous allez apprendre à :

" Créez un projet Visual Studio qui utilise Windows Forms.


" Ajoutez et mettez en forme un élément de disposition.
" Ajoutez et mettez en forme des étiquettes.

Conditions préalables
Vous avez besoin de Visual Studio pour suivre ce didacticiel. Visitez la page de
téléchargements Visual Studio pour une version gratuite.

7 Notes

Ce tutoriel nécessite le modèle de projet application Windows Forms (.NET


Framework). Lors de l’installation, sélectionnez la charge de travail de
développement de bureaux .NET :
Si Visual Studio est déjà installé et que vous devez ajouter le modèle, dans le menu,
sélectionnez Tools>Obtenir des outils et des fonctionnalités, ou dans la fenêtre
Créer un projet, sélectionnez Installer d’autres outils et fonctionnalités.

Créer un projet de jeu d'association de


Windows Forms
La première étape de la création de votre jeu consiste à créer un projet d’application
Windows Forms.

1. Ouvrez Visual Studio.

2. Dans la fenêtre de démarrage, sélectionnez Créer un projet.

3. Dans la fenêtre Créer un projet, recherchez Windows Forms. Sélectionnez ensuite


Desktop dans la liste Tous les types de projets.
4. Sélectionnez le modèle Application Windows Forms (.NET Framework) pour C#
ou Visual Basic, puis sélectionnez Suivant.

5. Dans la fenêtre Configurer votre nouveau projet, nommez votre projet


MatchingGame, puis sélectionnez Créer.

Visual Studio crée une solution pour votre application. Une solution est un conteneur
pour les projets et les fichiers dont votre application a besoin.

À ce stade, Visual Studio affiche un formulaire vide dans le Concepteur Windows Forms.

Créer une mise en page pour votre jeu


Dans cette section, vous allez créer la grille quatre par quatre pour le jeu.

1. Sélectionnez le formulaire pour sélectionner le Concepteur Windows Forms.


L’onglet lit Form1.cs [Création] pour C# ou Form1.vb [Création] pour Visual Basic.
Dans la fenêtre Propriétés, définissez les propriétés de formulaire suivantes.

Modifiez la propriété Texte du formulaire en remplaçant Form1 par Matching


Game. Ce texte apparaît en haut de la fenêtre de jeu.
Définissez la taille du formulaire. Vous pouvez le modifier en définissant la
propriété Size sur 550, 550 ou en faisant glisser l’angle du formulaire jusqu’à
ce que vous voyiez la taille correcte en bas de l’IDE Visual Studio.

2. Sélectionnez l’onglet Boîte à outils sur le côté gauche de l’IDE. Si vous ne le voyez
pas, sélectionnez Afficher>Boîte à outils dans la barre de menus ou sélectionnez
Ctrl+Alt+X.

3. Faites glisser un contrôle TableLayoutPanel à partir de la catégorie Conteneurs


dans la boîte à outils, ou double-cliquez dessus. Définissez les propriétés suivantes
pour le panneau dans la fenêtre Propriétés.

Affectez la valeur CornflowerBlue à la propriété BackColor. Pour définir cette


propriété, sélectionnez la flèche vers le bas en regard de la propriété
BackColor. Dans la boîte de dialogue résultante, sélectionnez Web. Dans la
liste des noms, sélectionnez CornflowerBlue.

7 Notes

Les couleurs ne sont pas dans l’ordre alphabétique. CornflowerBlue est


proche du bas de la liste.

Définissez la propriété Ancrer sur Remplir en sélectionnant la flèche vers le


bas, puis en sélectionnant le bouton central volumineux. Cette option permet
d’étendre la table afin qu’elle couvre le formulaire entier.

Affectez la valeur Inset à la propriété CellBorderStyle. Cette valeur fournit des


bordures visuelles entre chaque cellule du tableau.

Sélectionnez le bouton triangle dans le coin supérieur droit du


TableLayoutPanel pour afficher son menu de tâches. Dans le menu des
tâches, sélectionnez Ajouter une ligne deux fois pour ajouter deux lignes
supplémentaires. Sélectionnez ensuite Ajouter une colonne deux fois pour
ajouter deux colonnes supplémentaires.

Dans la barre des tâches, sélectionnez Modifier les lignes et les colonnes
pour afficher la fenêtre Styles de ligne et de colonne. Pour chaque colonne,
sélectionnez l’option Pourcentage, puis définissez la largeur de chaque
colonne sur 25 %.

Sélectionnez Lignes dans la liste en haut de la fenêtre, puis définissez la


hauteur de chaque ligne sur 25 pour cent.

Lorsque vous avez terminé, sélectionnez OK pour enregistrer vos


modifications.

Votre TableLayoutPanel est maintenant une grille de quatre par quatre avec 16 cellules
carrées de taille égale. Ces lignes et colonnes sont l’endroit où les icônes s’affichent
ultérieurement.
Ajouter et mettre en forme des étiquettes
Dans cette section, vous créez et mettez en forme des étiquettes qui s’affichent pendant
le jeu.

1. Assurez-vous que TableLayoutPanel est sélectionné dans l’éditeur de formulaire.


Vous devez voir tableLayoutPanel1 en haut de la fenêtre Propriétés. S’il n’est pas
sélectionné, sélectionnez le TableLayoutPanel sur le formulaire ou sélectionnez-le
dans la liste en haut de la fenêtre propriétés .

2. Ouvrez la boîte à outils, comme précédemment, puis ouvrez la catégorie Contrôles


communs. Ajoutez un contrôle Label à la cellule supérieure gauche du
TableLayoutPanel. Le contrôle d’étiquette est désormais sélectionné dans l’IDE.
Définissez les propriétés suivantes pour celle-ci.

Définissez la propriété de l’étiquette BackColor sur CornflowerBlue.


Affectez à la propriété AutoSize la valeur False.
Affectez la valeur Fill à la propriété Dock.
Définissez la propriété TextAlign sur MiddleCenter en sélectionnant le
bouton flèche vers le bas en regard de la propriété, puis en sélectionnant le
bouton central. Cette valeur garantit que l’icône apparaît au milieu de la
cellule.
Sélectionnez la propriété Font. Un bouton d'ellipse (...) s’affiche. Sélectionnez
le bouton de sélection, puis définissez la valeur Police sur Webdings, le Style
de police sur Gras et la Taille sur 48.
Affectez la lettre c à la propriété Text du contrôle Label.

La cellule supérieure gauche de TableLayoutPanel contient désormais une boîte


noire centrée sur un arrière-plan bleu.

7 Notes

Webdings est une police d’icône fournie avec le système d’exploitation


Windows. Dans votre jeu d'association, le joueur associe des paires d'icônes.
Cette police affiche les icônes à mettre en correspondance. Si les icônes
Webdings ne s’affichent pas correctement sur le formulaire, définissez la
propriété UseCompatibleTextRendering d’étiquettes sur le formulaire sur
True.

Au lieu de c, essayez différentes lettres dans la propriété Text. Un point


d’exclamation est une araignée, un N majuscule est un œil, et une virgule est
un piment.

3. Sélectionnez votre contrôle Label et copiez-le dans la cellule suivante du


TableLayoutPanel. Sélectionnez les touches Ctrl +Cou, dans la barre de menus,
Modifier>Copier. Collez-le ensuite à l’aide de Ctrl+V ou Modifier>Coller.

Une copie de la première étiquette apparaît dans la deuxième cellule du


TableLayoutPanel. Collez-la à nouveau, et une autre étiquette apparaît dans la
troisième cellule. Continuez à coller des contrôles d’étiquette jusqu'à ce que toutes
les cellules soient remplies.

Cette étape termine la disposition de votre formulaire.


Étape suivante
Accédez au tutoriel suivant pour savoir comment affecter une icône aléatoire à chaque
étiquette et ajouter des gestionnaires d’événements aux étiquettes.

Ajouter des icônes à votre jeu de combinaisons

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Didacticiel : Ajouter des icônes à votre
application WinForms de jeu de
combinaisons
Article • 03/02/2025

Dans cette série de quatre tutoriels, vous créez un jeu d'association, où le joueur associe
des paires d'icônes masquées.

Dans le jeu correspondant, un joueur sélectionne un carré pour afficher une icône, puis
choisit un autre carré. Si les icônes correspondent, elles restent visibles. Si ce n’est pas le
cas, le jeu masque les deux icônes. Dans ce tutoriel, vous affectez des icônes aux
étiquettes de façon aléatoire. Vous les définissez comme masquées, puis affichées
quand elles sont sélectionnées.

Dans ce deuxième tutoriel, vous allez apprendre à :

" Ajoutez un objet aléatoire et une liste d’icônes.


" Affectez une icône aléatoire à chaque étiquette.
" Ajoutez des gestionnaires d’événements qui affichent des icônes aux étiquettes.

Conditions préalables
Ce tutoriel s’appuie sur le didacticiel précédent, Créer une application de jeu
correspondante. Si vous n’avez pas fait ce tutoriel, passez d’abord par celui-ci.

Ajouter un objet aléatoire et une liste d’icônes


Dans cette section, vous allez créer un ensemble de symboles correspondants pour le
jeu. Chaque symbole est ajouté à deux cellules aléatoires dans le tableau
TableLayoutPanel du formulaire.

Vous utilisez des instructions new pour créer deux objets. Le premier est un objet
Random qui choisit de façon aléatoire des cellules dans TableLayoutPanel. Le deuxième
objet est un objet List<T>. Il stocke les symboles choisis de façon aléatoire.

1. Ouvrez Visual Studio. Votre projet MatchingGame apparaît sous Ouvrir les
éléments récents.

2. Sélectionnez Form1.cs si vous utilisez C#, ou Form1.vb si vous utilisez Visual Basic.
Sélectionnez ensuite Afficher>Code. Vous pouvez également sélectionner la
touche F7 ou double-cliquer sur Form1. L’IDE Visual Studio affiche le module de
code pour Form1.

3. Dans le code existant, ajoutez le code suivant.

C#

C#

public partial class Form1 : Form


{
// Use this Random object to choose random icons for the
squares
Random random = new Random();

// Each of these letters is an interesting icon


// in the Webdings font,
// and each icon appears twice in this list
List<string> icons = new List<string>()
{
"!", "!", "N", "N", ",", ",", "k", "k",
"b", "b", "v", "v", "w", "w", "z", "z"
};

Si vous utilisez C#, veillez à placer le code après l’accolade ouvrante et juste après la
déclaration de classe ( public partial class Form1 : Form ). Si vous utilisez Visual Basic,
placez le code juste après la déclaration de classe ( Public Class Form1 ).

Vous pouvez utiliser des objets de liste pour suivre différents types d’éléments. Une liste
peut contenir des nombres, des valeurs true/false, du texte ou d’autres objets. Dans
votre jeu correspondant, l’objet de liste comporte 16 chaînes, une pour chaque cellule
du panneau TableLayoutPanel. Chaque chaîne est une lettre unique qui correspond aux
icônes des étiquettes. Ces caractères apparaissent dans la police Webdings sous la
forme d’un bus, d’un vélo et d’autres.

7 Notes

Les listes peuvent réduire et croître selon les besoins, ce qui est important dans ce
programme.

Pour en savoir plus sur les listes, consultez List<T>. Pour voir un exemple en C#,
consultez Exemple de liste de base. Pour voir un exemple dans Visual Basic, consultez
Utilisation d’une collection simple.

Affecter une icône aléatoire à chaque étiquette


Chaque fois que vous exécutez le programme, il affecte les icônes de manière aléatoire
aux contrôles Label de votre formulaire à l’aide d’une méthode AssignIconsToSquares() .
Ce code utilise le mot clé foreach en C# ou For Each en Visual Basic.

1. Ajoutez la méthode AssignIconsToSquares() à Form1.cs ou Form1.vb .

C#

C#

/// <summary>
/// Assign each icon from the list of icons to a random square
/// </summary>
private void AssignIconsToSquares()
{
// The TableLayoutPanel has 16 labels,
// and the icon list has 16 icons,
// so an icon is pulled at random from the list
// and added to each label
foreach (Control control in tableLayoutPanel1.Controls)
{
Label iconLabel = control as Label;
if (iconLabel != null)
{
int randomNumber = random.Next(icons.Count);
iconLabel.Text = icons[randomNumber];
// iconLabel.ForeColor = iconLabel.BackColor;
icons.RemoveAt(randomNumber);
}
}
}

Vous pouvez entrer ce code juste en dessous du code que vous avez ajouté dans la
section précédente.

7 Notes

L’une des lignes est mise en commentaires à cet effet. Vous l’ajouterez plus tard
dans cette procédure.
La méthode AssignIconsToSquares() effectue une itération sur chaque contrôle
d’étiquette dans TableLayoutPanel. Elle exécute les mêmes instructions pour chacun
d’eux. Les instructions extrayent une icône aléatoire dans la liste.

La première ligne convertit la variable de contrôle en étiquette nommée iconLabel.


La deuxième ligne est une instruction if qui vérifie que la conversion a
fonctionné. Si la conversion fonctionne, les instructions de l’instruction if
s’exécutent.
La première ligne de l’instruction if crée une variable nommée randomNumber
qui contient un nombre aléatoire qui correspond à l’un des éléments de la liste
d’icônes. Il utilise la méthode Next() de l’objet Random. La méthode Next retourne
le nombre aléatoire. Cette ligne utilise également la propriété Count des icônes
liste pour déterminer la plage à partir de laquelle choisir le nombre aléatoire.
La ligne suivante affecte l’une des icônes éléments de liste à la propriété Text de
l’étiquette.
La ligne suivante masque les icônes. La ligne est commentée ici pour vous
permettre de vérifier le reste du code avant de continuer.
La dernière ligne de l’instruction if supprime de la liste l’icône qui a été ajoutée
au formulaire.

1. Ajoutez un appel à la méthode AssignIconsToSquares() au constructeur Form1


dans Form1.cs . Cette méthode remplit le tableau de jeu avec des icônes. Les
constructeurs sont appelés lorsque vous créez un objet.

C#

public Form1()
{
InitializeComponent();

AssignIconsToSquares();
}

Pour Visual Basic, ajoutez l’appel de méthode AssignIconsToSquares() à la


méthode Form1_Load dans Form1.vb .

VB

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles


MyBase.Load
AssignIconsToSquares()
End Sub
Pour plus d’informations, consultez Constructeurs (guide de programmation C#)
ou Utiliser des Constructeurs et des Destructeurs.

2. Enregistrez votre programme et exécutez-le. Il doit afficher un formulaire avec des


icônes aléatoires affectées à chaque étiquette.

 Conseil

Si les icônes Webdings ne s’affichent pas correctement sur le formulaire,


définissez la propriété UseCompatibleTextRendering des étiquettes du
formulaire sur True.

3. Fermez votre programme, puis réexécutez-le. Différentes icônes sont affectées à


chaque étiquette.

Les icônes sont visibles maintenant, car vous ne les avez pas masquées. Pour les
masquer du lecteur, vous pouvez définir la propriété ForeColor de chaque
étiquette sur la même couleur que sa propriété BackColor.
4. Arrêtez le programme. Supprimez les marques de commentaire pour la ligne de
code commentée à l’intérieur de la boucle dans la méthode
AssignIconsToSquares() .

C#

C#

iconLabel.ForeColor = iconLabel.BackColor;

Si vous réexécutez le programme, les icônes semblent avoir disparu. Seul un arrière-plan
bleu apparaît. Les icônes sont attribuées de manière aléatoire et sont toujours là.

Ajouter des gestionnaires d’événements aux


étiquettes
Dans ce jeu correspondant, un joueur révèle une icône masquée, puis une deuxième. Si
les icônes correspondent, elles restent visibles. Sinon, les deux icônes sont masquées à
nouveau.

Pour que votre jeu fonctionne de cette façon, ajoutez un gestionnaire d’événements
Click qui modifie la couleur de l’étiquette choisie pour qu’elle corresponde à l’arrière-
plan.

1. Ouvrez le formulaire dans le Concepteur Windows Forms. Sélectionnez Form1.cs


ou Form1.vb, puis sélectionnezAffichage>Concepteur.

2. Choisissez le premier contrôle d’étiquette pour le sélectionner et double-cliquez


dessus pour ajouter un gestionnaire d’événements Click appelé label1 _Click() au
code.

3. Maintenez ensuite la touche Ctrl enfoncée tout en sélectionnant chacune des


autres étiquettes. Assurez-vous que chaque étiquette est sélectionnée.

4. Dans la fenêtre Propriétés, sélectionnez le bouton Événements, qui est représenté


par un éclair. Pour l’événement Click, sélectionnez label1_Click dans la zone.
5. Sélectionnez la touche Entrée. L’IDE ajoute un gestionnaire d’événements Click
appelé label1 _Click() au code dans Form1.cs ou Form1.vb. Étant donné que vous
avez sélectionné toutes les étiquettes, le gestionnaire est raccordé à chacune des
étiquettes.

6. Renseignez le reste du code.

C#

C#

/// <summary>
/// Every label's Click event is handled by this event handler
/// </summary>
/// <param name="sender">The label that was clicked</param>
/// <param name="e"></param>
private void label1_Click(object sender, EventArgs e)
{
Label clickedLabel = sender as Label;

if (clickedLabel != null)
{
// If the clicked label is black, the player clicked
// an icon that's already been revealed --
// ignore the click
if (clickedLabel.ForeColor == Color.Black)
return;

clickedLabel.ForeColor = Color.Black;
}
}
7 Notes

Si vous copiez et collez le bloc de code label1_Click() plutôt que d’entrer le code
manuellement, veillez à remplacer le code label1_Click() existant. Sinon, vous
obtiendrez un bloc de code en double.

Sélectionnez Débogage>Démarrer le débogage pour exécuter votre programme. Vous


devez voir un formulaire vide avec un arrière-plan bleu. Choisissez l’une des cellules du
formulaire. L’une des icônes doit devenir visible. Continuez à choisir différents
emplacements dans le formulaire. Lorsque vous choisissez les icônes, elles doivent
apparaître.

Étapes suivantes
Passez au didacticiel suivant pour apprendre à modifier des étiquettes à l’aide d’un
minuteur.
Utiliser un minuteur dans votre jeu de combinaisons

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Ajouter des variables de
référence et un contrôle de minuteur à
votre application WinForms de jeu
correspondante
Article • 07/02/2025

Dans cette série de quatre tutoriels, vous créez un jeu d'association, où le joueur associe
des paires d’icônes cachées.

Votre programme de jeu de combinaisons doit effectuer le suivi des contrôles Étiquette
choisis par le joueur. Une fois qu’un joueur choisit la première étiquette, le programme
doit afficher l’icône. Une fois la deuxième étiquette choisie, le programme doit afficher
les deux icônes pendant un bref instant. Ensuite, il masque les deux icônes.

Votre programme suit le Label que vous choisissez en premier et en deuxième en


utilisant les variables de référence . Un minuteur masque les icônes et contrôle la durée
d’affichage des icônes

" Ajoutez des références d’étiquette.


" Ajoutez un minuteur.

Conditions préalables
Ce didacticiel s’appuie sur les didacticiels précédents, Créer une application de jeu
correspondante et Ajouter des icônes à votre jeu correspondant. Suivez d’abord ces
didacticiels.

Ajouter des références d’étiquettes


Dans cette section, vous allez ajouter deux variables de référence à votre code. Elles
effectuent le suivi des objets d’étiquette, ou font référence à ces objets.

1. Ajoutez des références d’étiquette à votre formulaire à l’aide du code suivant dans
Form1.cs ou Form1.vb .

C#

C#
public partial class Form1 : Form
{
// firstClicked points to the first Label control
// that the player clicks, but it will be null
// if the player hasn't clicked a label yet
Label firstClicked = null;

// secondClicked points to the second Label control


// that the player clicks
Label secondClicked = null;

Si vous utilisez C#, placez le code après l’accolade ouvrante, puis immédiatement après
la déclaration de classe ( public partial class Form1 : Form ). Si vous utilisez Visual
Basic, placez le code juste après la déclaration de classe ( Public Class Form1 ).

Ces instructions n’entraînent pas l’affichage des contrôles Étiquette sur le formulaire, car
il n’existe aucun mot clé new . Au démarrage du programme, les firstClicked et les
secondClicked sont définis sur null pour C# ou Nothing pour Visual Basic.

2. Modifiez votre gestionnaire d’événements Click dans Form1.cs ou Form1.vb pour


utiliser la nouvelle variable de référence firstClicked . Supprimez la dernière
instruction de la méthode du gestionnaire d’événements label1_Click()
( clickedLabel.ForeColor = Color.Black; ) et remplacez-la par l’instruction if
comme suit.

C#

C#

/// <summary>
/// Every label's Click event is handled by this event handler
/// </summary>
/// <param name="sender">The label that was clicked</param>
/// <param name="e"></param>
private void label1_Click(object sender, EventArgs e)
{
Label clickedLabel = sender as Label;

if (clickedLabel != null)
{
// If the clicked label is black, the player clicked
// an icon that's already been revealed --
// ignore the click
if (clickedLabel.ForeColor == Color.Black)
return;
// If firstClicked is null, this is the first icon
// in the pair that the player clicked,
// so set firstClicked to the label that the player
// clicked, change its color to black, and return
if (firstClicked == null)
{
firstClicked = clickedLabel;
firstClicked.ForeColor = Color.Black;

return;
}
}
}

3. Enregistrez et exécutez votre programme. Choisissez l’un des contrôles d’étiquette


et son icône s’affiche. Choisissez le contrôle d’étiquette suivant et notez que rien
ne se produit.

Seule la première icône choisie s’affiche. Les autres icônes sont invisibles.
Le programme suit déjà la première étiquette choisie par le joueur. La référence
firstClicked n’est pas null en C# ou Nothing en Visual Basic. Lorsque votre instruction

if trouve que firstClicked n’est pas égale à null ou Nothing , elle exécute les

instructions.

Ajouter un minuteur
L’application de jeu de combinaisons utilise un contrôle Timer. Un minuteur attend, puis
déclenche un événement. Cela s’appelle un cycle. Un minuteur peut démarrer une action
ou répéter une action régulièrement.

Dans votre programme, le minuteur permet à un joueur de choisir deux icônes. Si les
icônes ne correspondent pas, elle masque à nouveau les deux icônes après une courte
période de temps.

1. Sélectionnez l’onglet Boîte à outils, dans la catégorie Composants, double-cliquez


sur le composant Minuteur, ou faites-le glisser vers votre formulaire. L’icône du
minuteur, appelée minuteur1, apparaît dans un espace situé sous le formulaire.

2. Sélectionnez l’icône Minuteur1 pour sélectionner le minuteur. Dans la fenêtre


Propriétés, sélectionnez le bouton Propriétés pour afficher les propriétés.

3. Définissez la propriété Interval sur 750, soit 750 millisecondes.

La propriété Interval indique au minuteur la durée d’attente entre les cycles, c’est-
à-dire le moment où son événement Tick se déclenche. Votre programme appelle
la méthode Start() pour démarrer le minuteur une fois que le joueur choisit la
deuxième étiquette.

4. Choisissez l’icône de contrôle du minuteur, puis appuyez sur Entrée, ou double-


cliquez sur le minuteur. L’IDE ajoute un gestionnaire d’événements Tick vide à
Form1.cs ou Form1.vb . Remplacez le code par le code suivant.

C#

C#

/// <summary>
/// This timer is started when the player clicks
/// two icons that don't match,
/// so it counts three quarters of a second
/// and then turns itself off and hides both icons
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void timer1_Tick(object sender, EventArgs e)
{
// Stop the timer
timer1.Stop();

// Hide both icons


firstClicked.ForeColor = firstClicked.BackColor;
secondClicked.ForeColor = secondClicked.BackColor;

// Reset firstClicked and secondClicked


// so the next time a label is
// clicked, the program knows it's the first click
firstClicked = null;
secondClicked = null;
}

Le gestionnaire d’événements Tick effectue trois opérations :

Il s'assure que le minuteur ne fonctionne pas en appelant la méthode Stop().


Il utilise deux variables de référence, firstClicked et secondClicked , pour rendre
les icônes des deux étiquettes que le joueur a choisi de nouveau invisibles.
Il réinitialise les variables de référence firstClicked et secondClicked à null en
C# et Nothing en Visual Basic.

5. Accédez à l’éditeur de code et ajoutez du code en haut et en bas de la méthode


du gestionnaire d’événements label1_Click() dans Form1.cs ou Form1.vb . Ce
code vérifie si le minuteur est activé, définissez la variable de référence
secondClicked et démarrez le minuteur. La méthode de gestionnaire d’événements
label1_Click() se présente désormais comme suit :
C#

C#

/// <summary>
/// Every label's Click event is handled by this event handler
/// </summary>
/// <param name="sender">The label that was clicked</param>
/// <param name="e"></param>
private void label1_Click(object sender, EventArgs e)
{
// The timer is only on after two non-matching
// icons have been shown to the player,
// so ignore any clicks if the timer is running
if (timer1.Enabled == true)
return;

Label clickedLabel = sender as Label;

if (clickedLabel != null)
{
// If the clicked label is black, the player clicked
// an icon that's already been revealed --
// ignore the click
if (clickedLabel.ForeColor == Color.Black)
return;

// If firstClicked is null, this is the first icon


// in the pair that the player clicked,
// so set firstClicked to the label that the player
// clicked, change its color to black, and return
if (firstClicked == null)
{
firstClicked = clickedLabel;
firstClicked.ForeColor = Color.Black;
return;
}

// If the player gets this far, the timer isn't


// running and firstClicked isn't null,
// so this must be the second icon the player clicked
// Set its color to black
secondClicked = clickedLabel;
secondClicked.ForeColor = Color.Black;

// If the player gets this far, the player


// clicked two different icons, so start the
// timer (which will wait three quarters of
// a second, and then hide the icons)
timer1.Start();
}
}

Le code situé en haut de la méthode vérifie si le minuteur a été démarré en


vérifiant la valeur de la propriété Enabled. Si le joueur choisit les contrôles
d’étiquette premier et deuxième et que le minuteur commence, le choix d’une
troisième étiquette ne fera rien.
Le code situé en bas de la méthode définit la variable de référence secondClicked
pour suivre le deuxième contrôle Label. Ensuite, il définit cette couleur d’icône
d’étiquette sur noir pour la rendre visible. Il démarre ensuite le minuteur en mode
déclenchement unique pour qu’il attende 750 millisecondes avant de déclencher
un seul cycle. Le gestionnaire d’événements Tick du minuteur masque les deux
icônes et réinitialise les variables de référence firstClicked et secondClicked . Le
formulaire est prêt pour que le joueur choisisse une autre paire d’icônes.

7 Notes

Si vous copiez et collez le bloc de code label1_Click() plutôt que d’entrer le code
manuellement, veillez à remplacer le code label1_Click() existant. Sinon, vous
obtiendrez un bloc de code en double.

6. Enregistrez et exécutez votre programme. Sélectionnez un carré et l’icône devient


visible. Choisissez un autre carré. L’icône apparaît brièvement, puis les deux icônes
disparaissent.

Votre programme effectue maintenant le suivi des premières et deuxième icônes que
vous choisissez. Il utilise le minuteur pour s’interrompre avant de faire disparaître les
icônes.

Étapes suivantes
Passez au tutoriel suivant pour savoir comment finir votre jeu de combinaisons.

Afficher un message de félicitations à votre jeu de combinaisons

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Afficher un message dans
votre application WinForms de jeu
correspondant
Article • 07/02/2025

Dans cette série de quatre tutoriels, vous créez un jeu de correspondance, où le joueur
associe des paires d'icônes cachées.

Dans ce tutoriel, vous modifiez votre jeu correspondant pour garder les paires mises en
correspondance visibles et pour afficher un message de félicitations lorsqu’un joueur
gagne.

Dans ce tutoriel, vous allez apprendre à :

" Garder les paires visibles.


" Vérifiez si un joueur a gagné.
" Essayez d’autres fonctionnalités.

Conditions préalables
Ce didacticiel s’appuie sur ces didacticiels précédents :

1. Créer une application de jeu correspondante


2. Ajouter des icônes à votre jeu correspondant
3. Ajouter un minuteur dans votre jeu correspondant

Garder les paires visibles


Lorsqu’un joueur combine une paire, le jeu doit se réinitialiser pour ne plus suivre les
étiquettes qui utilisent les variables de référence firstClicked et secondClicked . Il ne
doit pas réinitialiser les couleurs des deux étiquettes qui ont été mises en
correspondance. Ces étiquettes continuent d’être affichées.

1. Ajoutez l’instruction if suivante à la méthode du gestionnaire d’événements


label_Click() . Placez-la près de la fin du code juste au-dessus de l’instruction où

vous démarrez le minuteur.

C#
// If the player gets this far, the timer isn't
// running and firstClicked isn't null,
// so this must be the second icon the player clicked
// Set its color to black
secondClicked = clickedLabel;
secondClicked.ForeColor = Color.Black;

// If the player clicked two matching icons, keep them


// black and reset firstClicked and secondClicked
// so the player can click another icon
if (firstClicked.Text == secondClicked.Text)
{
firstClicked = null;
secondClicked = null;
return;
}

// If the player gets this far, the player


// clicked two different icons, so start the
// timer (which will wait three quarters of
// a second, and then hide the icons)
timer1.Start();
}
}

L’instruction if vérifie si l’icône de la première étiquette choisie par le lecteur est


identique à celle de la deuxième étiquette. Si les icônes sont identiques, le programme
exécute ses trois instructions. Les deux premières instructions réinitialisent les variables
de référence firstClicked et secondClicked . Ils n’effectuent plus le suivi d’aucune des
étiquettes. La troisième instruction est une instruction return , qui ignore le reste des
instructions de la méthode sans les exécuter.

2. Exécutez le programme, puis commencez à choisir des carrés sur le formulaire.


Si vous choisissez une paire qui ne correspond pas, l'événement Tick du minuteur se
déclenche. Les deux icônes disparaissent.

Si vous choisissez une paire correspondante, la nouvelle instruction if s’exécute.


L’instruction return fait que la méthode ignore le code qui démarre le minuteur. Les
icônes restent visibles.

Vérifier si un joueur a gagné


Vous avez créé un jeu amusant. Une fois qu’un joueur a gagné, le jeu devrait se
terminer. Cette section ajoute une méthode pour vérifier si le joueur a gagné.

1. Ajoutez une méthode CheckForWinner() au bas de votre code, sous le gestionnaire


d’événements timer1_Tick() .

C#
/// <summary>
/// Check every icon to see if it is matched, by
/// comparing its foreground color to its background color.
/// If all of the icons are matched, the player wins
/// </summary>
private void CheckForWinner()
{
// Go through all of the labels in the TableLayoutPanel,
// checking each one to see if its icon is matched
foreach (Control control in tableLayoutPanel1.Controls)
{
Label iconLabel = control as Label;

if (iconLabel != null)
{
if (iconLabel.ForeColor == iconLabel.BackColor)
return;
}
}

// If the loop didn’t return, it didn't find


// any unmatched icons
// That means the user won. Show a message and close the form
MessageBox.Show("You matched all the icons!", "Congratulations");
Close();
}

La méthode utilise une autre boucle foreach en C# ou une boucle For Each en Visual
Basic pour parcourir chaque étiquette du TableLayoutPanel. Il vérifie la couleur de l’icône
de chaque étiquette pour vérifier s’il correspond à l’arrière-plan. Si les couleurs
correspondent, l’icône reste invisible et le joueur n’a pas mis en correspondance toutes
les icônes restantes.

Dans ce cas, le programme utilise une instruction return pour ignorer le reste de la
méthode. Si la boucle traverse toutes les étiquettes sans exécuter l’instruction return ,
cela signifie que toutes les icônes du formulaire ont été mises en correspondance. Le
programme affiche une boîte de message pour féliciter le joueur pour sa victoire, puis
appelle la méthode Close() pour mettre fin au jeu.

2. Le gestionnaire d’événements Click de l’étiquette doit appeler la nouvelle méthode


CheckForWinner() .

C#
// If the player gets this far, the timer isn't
// running and firstClicked isn't null,
// so this must be the second icon the player clicked
// Set its color to black
secondClicked = clickedLabel;
secondClicked.ForeColor = Color.Black;

// Check to see if the player won


CheckForWinner();

// If the player clicked two matching icons, keep them


// black and reset firstClicked and secondClicked
// so the player can click another icon
if (firstClicked.Text == secondClicked.Text)
{
firstClicked = null;
secondClicked = null;
return;
}

Assurez-vous que votre programme recherche un gagnant immédiatement après qu’il


affiche la deuxième icône choisie par le joueur. Recherchez la ligne dans laquelle vous
définissez la couleur de la deuxième icône choisie, puis appelez la méthode
CheckForWinner() juste après cette ligne.

3. Enregistrez et exécutez le programme. Jouez au jeu et faites correspondre toutes


les icônes. Lorsque vous gagnez, le programme affiche un message de félicitations.
Après avoir sélectionné OK, le jeu de correspondance se ferme.

Essayer d’autres fonctionnalités


Votre jeu de combinaisons est terminé. Vous pouvez ajouter d’autres fonctionnalités
pour rendre ce jeu plus difficile et intéressant. Voici quelques options.

Remplacez les icônes et les couleurs par celles que vous choisissez.

Examinez la propriété Forecolor de l’étiquette.

Ajoutez un minuteur de jeu qui suit le temps nécessaire au joueur pour gagner.

Vous pouvez ajouter une étiquette pour afficher le temps écoulé sur le formulaire.
Placez-la au-dessus du TableLayoutPanel. Ajoutez un autre minuteur au formulaire
pour suivre l’heure. Utilisez du code pour démarrer le minuteur lorsque le joueur
démarre le jeu et arrêter le minuteur après qu’il correspond aux deux dernières
icônes.
Ajoutez un son lorsque le joueur trouve une correspondance, un autre son lorsque
le joueur découvre deux icônes qui ne correspondent pas, et un troisième son
lorsque le programme masque à nouveau les icônes.

Pour jouer des sons, vous pouvez utiliser l’espace de noms System.Media. Pour
plus d’informations, consultez Lire des sons dans l’application Windows Forms
(C#) ou Comment lire l’audio dans Visual Basic .

Rendre le jeu plus difficile en rendant le tableau plus grand.

Vous devez faire plus que simplement ajouter des lignes et des colonnes au
TableLayoutPanel. Vous devez également prendre en compte le nombre d’icônes
que vous créez.

Rendre le jeu plus difficile en masquant la première icône si le joueur est trop lent
pour répondre.

Étapes suivantes
Félicitations! Vous avez terminé cette série de tutoriels. Vous avez effectué ces tâches de
programmation et de conception dans l’IDE Visual Studio :

Objets stockés, tels que les icônes, dans une liste


Utilisation d’une boucle en C# ou Visual Basic pour itérer dans une liste
Tenir à jour l'état en utilisant des variables de référence
Créer un gestionnaire d’événements pour répondre aux événements pour plusieurs
objets
Ajout d’un minuteur qui compte et déclenche un événement

Passez à cet article pour une présentation approfondie du Concepteur Windows Forms.

Tutoriel : démarrage du Concepteur Windows Forms

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Exécuter un programme ou une
application C# dans Visual Studio
Article • 07/02/2025

L'exécution d'un programme ou le démarrage d'une application dépend de


l'environnement à partir duquel vous démarrez, du type de programme ou
d'application, et si vous souhaitez l'exécuter sous un débogueur. Dans le cas le plus
simple, pour générer et exécuter un projet ouvert dans Visual Studio :

Appuyez sur F5 , choisissez Déboguer>Démarrer avec le débogage dans le menu


Visual Studio, ou sélectionnez la flèche verte Démarrer et le nom du projet dans la
barre d’outils Visual Studio.
Ou, pour exécuter sans débogage, appuyez sur Ctrl+ F5 ou choisissez
Déboguer>Démarrer sans débogage dans le menu Visual Studio.

Démarrer à partir d’un projet


Vous pouvez exécuter un projet C# ( .csproj fichier) s’il s’agit d’un programme
exécutable. Si le projet contient un fichier C# avec une méthode Main et que sa sortie
est un fichier exécutable ou .exe , il s’exécute probablement s’il génère correctement. Si
la sortie de votre projet est un fichier exécutable et n’a pas de méthode Main , les
exécutions de programme commencent par des instructions de niveau supérieur.
Consultez Programmes sans méthodes Main. Certains types de projet, tels que les
bibliothèques de classes, ne sont pas exécutables. Les bibliothèques de classes ne
peuvent pas être exécutées par elles-mêmes, mais elles peuvent être référencées par
d’autres projets.

Si vous ne savez pas si le projet dont vous disposez est un fichier exécutable,
sélectionnez le nœud du projet dans l’Explorateur de solutions et ouvrez les propriétés
du projet. Cliquez avec le bouton droit sur le nœud pour afficher le menu contextuel,
puis choisissez Propriétés, ou appuyez sur Alt+Entrée. Dans la section Application,
recherchez le Type de sortie. S’il s’agit application console, il s’agit d’un programme
exécutable.

1. Ouvrez le projet. Pour ce faire, vous pouvez double-cliquer ou appuyer sur le


fichier .csproj dans l’Explorateur de fichiers Windows, ou choisir Ouvrir un projet
dans Visual Studio, rechercher le fichier .csproj , puis sélectionner le fichier.

2. Une fois le projet chargé dans Visual Studio, si votre solution Visual Studio a
plusieurs projets, veillez à définir le projet avec la méthode Main comme projet de
démarrage. Pour définir le projet de démarrage, cliquez avec le bouton droit sur le
nom ou le nœud du projet dans Explorateur de solutions, puis choisissez définir
comme projet de démarrage dans le menu contextuel.

3. Pour exécuter le programme, appuyez sur Ctrl+F5, sélectionnez


Déboguer>Démarrer sans déboguer dans le menu supérieur, ou sélectionnez le
bouton Vert Démarrer.

Visual Studio tente de générer et d’exécuter votre projet. En bas de l’écran Visual
Studio, la sortie de build s’affiche dans la fenêtre Sortie, et toutes les erreurs de
build s’affichent dans la fenêtre Liste d’erreurs.

Si la build réussit, l’application s’exécute comme il convient pour le type de projet.


Les applications console s’exécutent dans une fenêtre de terminal, les applications
de bureau Windows démarrent dans une nouvelle fenêtre de bureau et les
applications web s’exécutent dans un navigateur hébergé par IIS Express.

Démarrer à partir du code


Si vous avez un exemple de code C# exécutable à l’esprit, par exemple celui-ci ou un
fichier de code C# exécutable sur le disque, procédez comme suit.

Vérifiez d’abord que le code est un programme exécutable à partir d’une source
approuvée. Toute application avec une méthode Main est probablement un programme
exécutable, mais avec la version actuelle de C#, les programmes sans Main méthodes
avec des instructions de niveau supérieur peuvent également s’exécuter. Vous pouvez
utiliser le modèle d’application console pour créer un projet dans Visual Studio, puis
copier le code intoit.

Un fichier de code unique


1. Démarrez Visual Studio, choisissez Créer un projet, puis choisissez le projet C#
Application console.
2. Remplacez tout le code du fichier du projet .cs par le contenu de votre code ou
de votre fichier. Si le code que vous souhaitez utiliser se trouve sur le web ou dans
un seul fichier, il peut être plus simple de sélectionner le code, de le copier dans le
Presse-papiers et de le coller dans un fichier de code dans le projet Visual Studio.
3. Renommez le projet .cs fichier pour qu’il corresponde au nom de votre fichier de
code.

Plusieurs fichiers de code sur le disque


1. Démarrez Visual Studio et créez un projet de type approprié. Utilisez l’application
console C# si vous n’êtes pas sûr.
2. Dans le nouveau projet, remplacez tout le code du fichier de code du projet par le
contenu de votre première liste de code ou fichier.
3. Renommez le fichier de code du projet pour qu’il corresponde au nom de votre
fichier de code.
4. Pour chaque fichier de code restant :
a. Faites un clic droit sur le nœud de projet dans Explorateur de solutions,
choisissez Ajouter>Élément existant, ou sélectionnez le projet et appuyez sur
Maj+Alt+A.
b. Accédez au fichier de code et sélectionnez-le pour l’importer dans le projet.
Plusieurs fichiers dans un dossier
Si vous avez un dossier contenant de nombreux fichiers, commencez par rechercher un
fichier projet ou solution. Les programmes créés par Visual Studio ont des fichiers projet
et solution. Dans l’Explorateur de fichiers Windows, recherchez des fichiers avec
l’extension .csproj ou .sln . Double-cliquez sur le fichier .csproj pour l’ouvrir dans
Visual Studio. Consultez Démarrer à partir d’une solution ou d’un projet Visual Studio.

Si le code provient d’un autre environnement de développement, il n’existe aucun fichier


projet. Ouvrez le dossier en choisissant Ouvrir>dossier dans Visual Studio. Consultez
Développer du code sans projets ni solutions.

Démarrer à partir d’un dépôt GitHub ou Azure


DevOps
Si le code que vous souhaitez exécuter se trouve dans un dépôt GitHub ou Azure
DevOps, vous pouvez utiliser Visual Studio pour ouvrir le projet directement à partir du
dépôt. Consultez Ouvrir un projet à partir d’un dépôt.

Exécuter le programme
Pour commencer à générer le programme, appuyez sur le bouton Démarrer vert dans la
barre d’outils Visual Studio, ou appuyez sur F5 ou Ctrl+F5. L'utilisation du bouton
Démarrer ou de la touche F5 exécute le programme dans le débogueur.

Visual Studio tente de générer et d’exécuter le code dans votre projet. Si une build
échoue, consultez les sections suivantes pour obtenir un aperçu sur la façon de réussir la
génération du projet.

Dépannage
Votre code peut avoir des erreurs. Ou bien le code peut être correct, mais il dépend
peut-être des assemblys manquants ou des packages NuGet, ou cible une autre version
de .NET. Dans ce cas, vous pouvez facilement corriger la build.

Ajouter des références


Pour générer correctement, le code doit être correct et avoir les bonnes références aux
bibliothèques ou à d’autres dépendances. Les soulignements rouges dans le code ou les
entrées de la liste d’erreurs affichent des erreurs même avant de compiler et d’exécuter
le programme. Si les erreurs concernent des noms non résolus, vous devez
probablement ajouter une référence ou une directive using , ou les deux. Si le code fait
référence à des assemblys ou packages NuGet manquants, vous devez ajouter ces
références au projet.

Visual Studio tente d’identifier les références manquantes. Lorsqu’un nom n’est pas
résolu, une icône d’ampoule apparaît dans l’éditeur. Sélectionnez l’ampoule pour
afficher des suggestions sur la façon de résoudre le problème. Les correctifs pourraient
être :

Ajouter une directive using.


Ajouter une référence à un assembly.
Installez un package NuGet.

Ajouter une directive using


Voici un exemple de directive using manquante. Vous pouvez ajouter using System; au
début du fichier de code pour résoudre le nom non résolu Console :

Les versions récentes de C# prennent en charge les directives d'utilisation implicites


pour certains espaces de noms couramment utilisés. Par conséquent, si vous avez choisi
cette option lors de la création d’un projet, vous n'avez pas besoin de les ajouter
manuellement.

Ajouter une référence d'assembly

Les références .NET peuvent être des assemblys ou des packages NuGet. Dans le code
source, l’éditeur ou l’auteur explique généralement les assemblys dont le code a besoin
et les packages dont il dépend. Pour ajouter manuellement une référence à un projet,
cliquez avec le bouton droit sur le nœud Références dans l’Explorateur de solutions ,
puis choisissez Ajouter une référence. Dans le Gestionnaire de références, recherchez
et ajoutez l'assemblage requis.
Vous pouvez trouver des assemblages et ajouter des références en suivant les
instructions dans Ajouter ou supprimer des références avec le Gestionnaire de
références.

Ajouter un package NuGet

Si Visual Studio détecte un package NuGet manquant, une ampoule s’affiche et vous
donne la possibilité d’installer le package :
Si cela ne résout pas le problème ou Visual Studio ne peut pas localiser le package,
essayez de rechercher le package en ligne. Consultez Installer et utiliser un package
NuGet dans Visual Studio.

Utiliser la version appropriée de .NET


Étant donné que différentes versions du .NET Framework ont une compatibilité
descendante, un framework plus récent peut exécuter du code écrit pour un framework
plus ancien sans aucune modification. Toutefois, vous devez parfois cibler une version
spécifique du .NET Framework. Vous devrez peut-être installer une version spécifique du
.NET Framework ou de .NET Core. Consultez Modifier Visual Studio.

Pour modifier la version cible du .NET Framework, consultez Modifier le framework cible.
Pour plus d’informations, consultez Résolution des erreurs de ciblage du .NET
Framework.

Étapes suivantes
Explorez l’environnement de développement Visual Studio en lisant Bienvenue
dans l’IDE Visual Studio.
Créer votre première application C#.

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Tutoriel : Ouvrir un projet à partir d’un
dépôt
Article • 03/02/2025

Dans ce tutoriel, vous utilisez Visual Studio pour vous connecter à un référentiel ou
dépôt, pour la première fois, clonez-le, puis ouvrez un projet à partir de celui-ci.

Dans ce tutoriel, vous allez apprendre à :

" Ouvrir un projet à partir d’un dépôt GitHub


" Accéder à un dépôt Azure DevOps

Conditions préalables
Si vous n’avez pas encore Visual Studio, allez à Visual Studio téléchargements
pour l’installer gratuitement.

Ouvrir un projet à partir d’un dépôt GitHub


Visual Studio facilite l’ouverture d’un projet à partir d’un dépôt. Vous pouvez le faire
lorsque vous démarrez Visual Studio, ou vous pouvez le faire directement à partir du IDE
Visual Studio.

Voici comment.

Utiliser la fenêtre de démarrage


1. Ouvrez Visual Studio.

2. Dans la fenêtre de démarrage, sélectionnez Cloner un référentiel.


3. Entrez ou tapez l’emplacement du référentiel, puis sélectionnez Cloner.

4. Si vous n’êtes pas déjà connecté, vous serez peut-être invité à vous connecter à
Visual Studio ou à votre compte GitHub.

 Conseil

Pour plus d’informations sur la connexion à Visual Studio, consultez Se


connecter ou changer de compte d’utilisateur Visual Studio. Pour plus
d’informations sur l’utilisation de votre compte GitHub pour vous connecter,
consultez Ajouter vos comptes GitHub à votre trousseau Visual Studio. Vous
pouvez recevoir une notification d’approbation. Pour plus d’informations,
consultez Configurer les paramètres d’approbation pour les fichiers et
dossiers.

Afficher les fichiers dans l’Explorateur de solutions


Visual Studio charge les solutions à partir du référentiel à l’aide de la Vue dossier dans
l’Explorateur de solutions.

Vous pouvez afficher une solution dans la Vue de solution en double-cliquant sur son
fichier .sln .

Vous pouvez sélectionner Changer de vues pour passer de l'affichage des dossiers à la
vue solution.
 Conseil

Vous pouvez passer de l’affichage dossier par défaut à l’affichage solution à partir
du menu Git. Sélectionnez Paramètres>contrôle de code source>Paramètres
globaux Git>charger automatiquement la solution lors de l’ouverture d’un dépôt
Git.

Ouvrir un projet localement à partir d’un dépôt GitHub cloné


précédemment

1. Ouvrez Visual Studio.

2. Dans la fenêtre de démarrage, sélectionnez Ouvrir un projet ou une solution.

Visual Studio ouvre une instance de l’Explorateur de fichiers, où vous pouvez


accéder à votre solution ou projet, puis la sélectionner pour l’ouvrir.

 Conseil

Si vous avez ouvert le projet ou la solution récemment, sélectionnez-le dans la


section Ouvrir récemment.

Commencez à coder !
Utiliser l’IDE
Vous pouvez également utiliser le menu Git ou le contrôle Sélectionner un dépôt dans
l’IDE Visual Studio pour interagir avec les dossiers et fichiers d’un référentiel.

Voici comment.

Pour cloner un dépôt et ouvrir un projet


1. Dans l’IDE Visual Studio, sélectionnez le menu Git, puis sélectionnez Clone
Repository.

2. Suivez les invites pour vous connecter au référentiel Git qui inclut les fichiers que
vous recherchez.

Pour ouvrir des dossiers et des fichiers locaux

1. Dans l’IDE Visual Studio, sélectionnez le menu Git, référentiels locaux, puis Ouvrir
le référentiel local.

2. Suivez les invites pour vous connecter au référentiel Git qui contient les fichiers
que vous recherchez.

Accéder à un dépôt Azure DevOps


Voici comment accéder et cloner un dépôt Azure DevOps à l’aide de Visual Studio.

1. Ouvrez Visual Studio.


2. Dans la fenêtre de démarrage, sélectionnez Cloner un référentiel.

3. Dans la section Parcourir un référentiel, sélectionnez Azure DevOps.

4. Suivez les invites pour cloner un dépôt Azure DevOps qui inclut les fichiers que
vous recherchez, puis ouvrez votre projet.

Contenu connexe
N’hésitez pas à vous plonger dans l’un des didacticiels spécifiques au langage suivants :

Didacticiels Visual Studio | C#


Didacticiels Visual Studio | Visual Basic
Didacticiels Visual Studio | C++
Didacticiels Visual Studio | Python
didacticiels Visual Studio | JavaScript, typeScriptet Node.js

Pour plus d’informations, consultez :

à propos de Git dans Visual Studio


Parcourir un référentiel
Gérer un dépôt

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Apprenez à utiliser l’éditeur de code
avec C#
Article • 03/02/2025

Dans cette introduction de 10 minutes à l’éditeur de code dans Visual Studio, nous
allons ajouter du code à un fichier pour examiner certaines des façons dont Visual
Studio facilite l’écriture, la navigation et la compréhension du code C#.

Si vous n’avez pas encore installé Visual Studio, accédez à la page Téléchargements
Visual Studio pour l’installer gratuitement.

Cet article part du principe que vous connaissez déjà C#. Si ce n’est pas le cas, nous
vous suggérons de consulter un didacticiel tel que Bien démarrer avec C# et ASP.NET
Core dans Visual Studio d’abord.

 Conseil

Pour suivre cet article, vérifiez que les paramètres C# sont sélectionnés pour Visual
Studio. Pour plus d’informations sur la sélection des paramètres pour
l’environnement de développement intégré (IDE), consultez Sélectionner les
paramètres d’environnement.

Créer un fichier de code


Commencez par créer un fichier et y ajouter du code.

1. Ouvrez Visual Studio. Appuyez sur Échap, ou choisissez Continuer sans code dans
la fenêtre de démarrage pour ouvrir l’environnement de développement.

2. Dans le menu Fichier dans la barre de menus, choisissez Nouveau fichier>, ou


appuyez sur Ctrl+N.

3. Dans la boîte de dialogue Nouveau fichier, sous la catégorie Général, choisissez


classe Visual C#, puis choisissez Ouvrir.

Un nouveau fichier s’ouvre dans l’éditeur avec le squelette d’une classe C#. Vous
n’avez pas besoin de créer un projet Visual Studio complet pour bénéficier de
certains des avantages offerts par l’éditeur de code : tout ce dont vous avez besoin
est un fichier de code.
Utiliser des extraits de code
Visual Studio fournit des extraits de code utiles que vous pouvez utiliser pour générer
rapidement et facilement des blocs de code couramment utilisés. extraits de code sont
disponibles pour différents langages de programmation, notamment C#, Visual Basic et
C++.

Ajoutons l’extrait de code C# void Main à notre fichier.

1. Placez votre curseur juste au-dessus de l’accolade fermante finale } dans le fichier,
puis tapez les caractères svm . svm signifie static void Main , ne vous inquiétez pas
si vous ne savez pas encore ce que cela signifie.

Une boîte de dialogue contextuelle s’affiche avec des informations sur l’extrait de
code svm .

2. Appuyez sur Tab deux fois pour insérer l’extrait de code.


Vous verrez que la signature de méthode static void Main() est ajoutée au
fichier. La méthode Main() est le point d’entrée pour les applications C#.

Les extraits de code disponibles varient selon les différents langages de programmation.
Vous pouvez examiner les extraits de code disponibles pour votre langue en choisissant
Modifier>IntelliSense>Insérer un extrait de code ou en appuyant sur Ctrl+K, Ctrl+X,
puis en choisissant le dossier de votre langage de programmation. Pour C#, la liste
d’extraits de code ressemble à ceci :

La liste inclut des extraits de code pour créer une classe , un constructeur , une boucle
pour, une instruction si ou switch, etc.

Commenter du code
La barre d’outils, qui est la ligne de boutons sous la barre de menus de Visual Studio,
vous permet de vous rendre plus productif lorsque vous codez. Par exemple, vous
pouvez activer ou désactiver le mode de saisie semi-automatique IntelliSense,
augmenter ou réduire un retrait d’une ligne, ou commenter du code que vous ne voulez
pas compiler.

Nous allons commenter du code.


1. Collez le code suivant dans le corps de la méthode Main() .

C#

// someWords is a string array.


string[] someWords = {
"the",
"quick",
"brown",
"fox",
"jumps"
};

string[] moreWords = {
"over",
"the",
"lazy",
"dog"
};

// Alphabetically sort the words.


IEnumerable<string> query = from word in someWords
orderby word
select word;

2. Nous n’utilisons pas la variable moreWords , mais nous pouvons l’utiliser


ultérieurement afin de ne pas vouloir la supprimer. Au lieu de cela, nous allons
commenter ces lignes. Sélectionnez la définition entière de moreWords jusqu’au
point-virgule fermant, puis choisissez le bouton Commenter les lignes
sélectionnées de la barre d’outils. Si vous préférez utiliser le clavier, appuyez sur
Ctrl+E, Ctrl+C.

Les caractères de commentaire C# // sont ajoutés au début de chaque ligne


sélectionnée pour commenter le code.

Réduire les blocs de code


Nous n’avons pas besoin de voir le constructeur vide de Class1 qui a été généré. Pour
plus de lisibilité, nous allons donc réduire ce bloc de code. Choisissez la petite case grise
avec le signe moins qui se trouve dans la marge de la première ligne du constructeur.
Ou, si vous préférez utiliser le clavier, placez le curseur n’importe où dans le code du
constructeur et appuyez sur Ctrl+M, Ctrl+M.

Le bloc de code s’réduit à la première ligne, suivi d’un point de suspension ( ... ). Pour
développer à nouveau le bloc de code, sélectionnez la même zone grise qui comporte
maintenant un signe plus, ou appuyez à nouveau sur Ctrl+M, Ctrl+M. Cette
fonctionnalité, appelée Mode Plan, est très utile pour réduire des méthodes longues ou
des classes entières.

Afficher les définitions de symboles


L’éditeur Visual Studio facilite l’inspection de la définition d’un type, d’une méthode ou
d’une variable. L’une des façons consiste à accéder à la définition, dans quel fichier qu’il
contient, en choisissant Atteindre la définition ou en appuyant sur F12 n’importe où un
symbole est référencé. Une autre façon encore plus rapide, sans avoir à déplacer le
focus en dehors du code dans lequel vous travaillez, consiste à utiliser la fonctionnalité
Aperçu de la définition.

Examinons la définition du type string .

1. Cliquez avec le bouton droit sur une occurrence de string , puis choisissez Aperçu
de la définition dans le menu de contenu. Ou appuyez sur Alt+F12.

Une fenêtre contextuelle s’affiche avec la définition de la classe String . Vous


pouvez faire défiler la fenêtre contextuelle, ou même afficher la définition d’un
autre type à partir du code aperçu.

2. Fermez la fenêtre de définition d’aperçu en choisissant la petite zone avec un « x »


en haut à droite de la fenêtre contextuelle.
Utiliser IntelliSense pour compléter les mots
IntelliSense est une ressource inestimable lorsque vous codez. Il peut vous afficher des
informations sur les membres disponibles d’un type ou des détails de paramètre pour
différentes surcharges d’une méthode. Vous pouvez également utiliser IntelliSense pour
terminer un mot après avoir tapé suffisamment de caractères pour le lever d’ambiguïté.

Ajoutons une ligne de code pour imprimer les chaînes ordonnées dans la fenêtre de
console, qui est l’emplacement standard pour la sortie du programme.

1. Sous la variable query , commencez à taper le code suivant :

C#

foreach (string str in qu

Une fenêtre contextuelle IntelliSense s’affiche avec des informations sur le symbole
query .

2. Pour insérer le reste du mot query à l’aide de la saisie semi-automatique


IntelliSense, appuyez sur Tab.

3. Terminez le bloc de code pour ressembler au code suivant. Vous pouvez continuer
avec les extraits de code en entrant cw , puis en appuyant sur Tab deux fois pour
générer l’instruction Console.WriteLine .

C#

foreach (string str in query)


{
Console.WriteLine(str);
}

Refactoriser un nom
Personne n’obtient le code la première fois, et l’une des choses que vous devrez peut-
être modifier est le nom d’une variable ou d’une méthode. Essayons la fonctionnalité de
refactorisation de Visual Studio pour renommer la variable someWords en unsortedWords .

1. Placez votre curseur sur la définition de la variable someWords , puis choisissez


Renommer dans le menu contextuel ou cliquez avec le bouton droit, ou appuyez
sur F2.

Une boîte de dialogue Renommer s’affiche en haut à droite de l’éditeur.

2. Entrez le nom souhaité, unsortedWords. Vous verrez que la référence à


unsortedWords dans l’instruction d’affectation query est également renommée

automatiquement. Avant d’appuyer sur Entrée, cochez la case Inclure les


commentaires dans la boîte de dialogue contextuelle Renommer.

3. Appuyez sur Entrée ou choisissez Appliquer dans la boîte de dialogue Renommer.


Les deux occurrences de someWords dans votre code ont été renommées, ainsi que
le texte someWords dans votre commentaire de code.

Étapes suivantes
En savoir plus sur les projets et les solutions

Voir aussi
extraits de code
Naviguer dans le code
Mode Plan
Accéder à la définition et afficher la définition
Refactorisation
Utiliser IntelliSense

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Compiler et générer dans Visual Studio
Article • 03/02/2025

Pour une première introduction à la création dans l’IDE, consultez procédure pas à pas :
création d’une application.

Vous pouvez utiliser l’une des méthodes suivantes pour générer une application : l’IDE Visual
Studio, les outils en ligne de commande MSBuild et Azure Pipelines :

ノ Agrandir le tableau

Méthode de Avantages
construction

IDE - Créez des builds immédiatement et testez-les dans un débogueur.


- Exécutez des builds multiprocesseurs pour les projets C++ et C#.
- Personnaliser différents aspects du système de compilation.

CMake - Générer des projets C++ à l’aide de l’outil CMake


- Utilisez le même système de génération sur les plateformes Linux et Windows.

Ligne de commande - Générer des projets sans installer Visual Studio.


MSBuild - Exécuter des builds multiprocesseur pour tous les types de projets.
- Personnalisez la plupart des aspects du système de compilation.

Azure Pipelines - Automatisez votre processus de génération dans le cadre d’un pipeline
d’intégration/livraison continue.
- Appliquer des tests automatisés avec chaque build.
- Utilisez des ressources virtuellement illimitées basées sur le cloud pour les
processus de génération.
- Modifiez le flux de travail de génération et créez des activités de génération
pour effectuer des tâches profondément personnalisées.

La documentation de cette section décrit plus en détail le processus de génération basé sur
l’IDE. Pour plus d’informations sur les autres méthodes, consultez CMake, MSBuild et Azure
Pipelines, respectivement.

Génération à partir de l'IDE


Lorsque vous créez un projet, Visual Studio a créé des configurations de build par défaut pour
le projet et la solution qui contient le projet. Ces configurations définissent la façon dont les
solutions et les projets sont générés et déployés. Les configurations de projet en particulier
sont uniques pour une plateforme cible (par exemple, Windows ou Linux) et un type de build
(par exemple, déboguer ou libérer). Vous pouvez modifier ces configurations comme vous le
souhaitez et créer vos propres configurations en fonction des besoins.
Pour une première introduction à la création dans l’IDE, consultez procédure pas à pas :
création d’une application.

Ensuite, consultez Création et nettoyage de projets et de solutions dans Visual Studio pour en
savoir plus sur les différentes personnalisations que vous pouvez apporter au processus. Les
personnalisations incluent modification des répertoires de sortie, spécification d’événements
de build personnalisés, la gestion des dépendances de projet, la gestion des fichiers journaux
de buildet la suppression des avertissements du compilateur.

À partir de là, vous pouvez explorer une variété d’autres tâches :

Comprendre les configurations de build


Configurer des projets pour cibler des plateformes
Gérer les propriétés de projet et de solution.
Spécifiez des événements de build dans C# et Visual Basic
Définir les options de construction
Générer plusieurs projets en parallèle

Contenu connexe
Génération (compilation) de projets de site web
Projets CMake dans Visual Studio
Tutoriel : Apprendre à déboguer du
code C# à l’aide de Visual Studio
Article • 03/02/2025

Cet article présente les fonctionnalités du débogueur Visual Studio dans une procédure
pas à pas. Si vous souhaitez une vue de niveau supérieur des fonctionnalités du
débogueur, consultez Premier aperçu du débogueur. Lorsque vous déboguez votre
application, cela signifie généralement que vous exécutez votre application avec le
débogueur activé. Lorsque vous effectuez cette tâche, le débogueur fournit de
nombreuses façons de voir ce que fait votre code pendant son exécution. Vous pouvez
parcourir votre code et examiner les valeurs stockées dans des variables, vous pouvez
définir des montres sur les variables pour voir quand les valeurs changent, vous pouvez
examiner le chemin d’exécution de votre code, voir si une branche de code est en cours
d’exécution, et ainsi de suite. Si c'est la première fois que vous essayez de déboguer du
code avec cet exercice, vous voudrez peut-être lire Débogage pour les débutants
absolus avant de passer à cet article.

Bien que l’application de démonstration soit C#, la plupart des fonctionnalités


s’appliquent à C++, Visual Basic, F#, Python, JavaScript et d’autres langages pris en
charge par Visual Studio (F# ne prend pas en charge edit-and-continue). F# et JavaScript
ne prennent pas en charge la fenêtre Autos). Les captures d’écran sont en C#.

Dans ce tutoriel, vous allez :

" Démarrer le débogueur et atteindre des points d’arrêt.


" Découvrir les commandes pour parcourir le code dans le débogueur
" Inspecter des variables dans des bulles d’informations et dans les fenêtres du
débogueur
" Examiner la pile des appels

Conditions préalables
Vous devez avoir Visual Studio 2022 installé ainsi que la charge de travail de
développement de bureau .NET .

Si vous n’avez pas encore installé Visual Studio, accédez à la page Téléchargements
Visual Studio pour l’installer gratuitement.

Si vous disposez déjà de Visual Studio, mais que la charge de travail Développement
.NET Desktop n’est pas installée, accédez à Outils>Obtenir des outils et des
fonctionnalités..., ce qui lance Visual Studio Installer. Dans Visual Studio Installer,
choisissez la charge de travail Développement .NET Desktop, puis Modifier.

Créer un projet
Tout d’abord, vous créez un projet d’application console .NET Core. Le type de projet est
fourni avec tous les fichiers de modèle dont vous avez besoin, avant même d’avoir
ajouté quoi que ce soit !

1. Ouvrez Visual Studio. Si la fenêtre de démarrage n’est pas ouverte, sélectionnez


Fichier>Fenêtre de démarrage.

2. Dans la fenêtre de démarrage, sélectionnez Créer un projet.

3. Dans la fenêtre Créer un projet, saisissez console dans la zone de recherche.


Ensuite, choisissez C# dans la liste de langues, puis choisissez Windows dans la
liste plateforme.

Après avoir appliqué les filtres de langue et de plateforme, choisissez le modèle


Application Console, puis sélectionnez Suivant.

7 Notes
Si vous ne voyez pas le modèle application console, vous pouvez l’installer à
partir de la fenêtre Créer un projet. Dans le message Vous ne trouvez pas ce
que vous cherchez ?, choisissez le lien Installer d’autres outils et
fonctionnalités. Dans Visual Studio Installer, choisissez ensuite la charge de
travail Développement .NET Desktop.

4. Dans la fenêtre Configurer votre nouveau projet, entrez GetStartedDebugging


dans la zone Nom du projet. Ensuite, sélectionnez Suivant.

5. Dans la fenêtre Informations supplémentaires, vérifiez que .NET 8.0 est


sélectionné dans le menu déroulant Framework, puis sélectionnez Créer.

Visual Studio ouvre votre nouveau projet.

Créer l’application
Dans Program.cs, remplacez tout le code par défaut par le code suivant :

C#

using System;

class ArrayExample
{
static void Main()
{
char[] letters = { 'f', 'r', 'e', 'd', ' ', 's', 'm', 'i', 't', 'h'};
string name = "";
int[] a = new int[10];
for (int i = 0; i < letters.Length; i++)
{
name += letters[i];
a[i] = i + 1;
SendMessage(name, a[i]);
}
Console.ReadKey();
}

static void SendMessage(string name, int msg)


{
Console.WriteLine("Hello, " + name + "! Count to " + msg);
}
}

Démarrez le débogueur !
Principalement, nous utilisons des raccourcis clavier ici, car il s’agit d’un moyen rapide
d’exécuter des commandes de débogueur. Les commandes équivalentes, telles que les
commandes de barre d’outils ou de menu, sont également indiquées.

1. Pour démarrer le débogueur, sélectionnez F5, ou choisissez le bouton cible de


débogage dans la barre d’outils Standard, ou choisissez le bouton Démarrer le
débogage dans la barre d’outils Débogage, ou choisissez DéboguerDémarrer le
débogage> dans la barre de menus.

F5 démarre l’application avec le débogueur attaché au processus d’application.


Comme nous n’avons rien fait de spécial pour examiner le code, l’application
s’exécute jusqu’à la fin et vous voyez la sortie de la console.

Invite de commandes Windows

Hello, f! Count to 1
Hello, fr! Count to 2
Hello, fre! Count to 3
Hello, fred! Count to 4
Hello, fred ! Count to 5
Hello, fred s! Count to 6
Hello, fred sm! Count to 7
Hello, fred smi! Count to 8
Hello, fred smit! Count to 9
Hello, fred smith! Count to 10

2. Pour arrêter le débogueur, sélectionnez Maj+F5, ou choisissez le bouton Arrêter le


débogage dans la barre d’outils Déboguer, ou choisissez Déboguer>Arrêter le
débogage dans la barre de menus.

3. Dans la fenêtre de console, sélectionnez n’importe quelle clé pour fermer la fenêtre
de console.

Définir un point d’arrêt et démarrer le


débogueur
1. Dans la boucle for de la fonction Main , définissez un point d’arrêt en cliquant
dans la marge gauche sur la ligne de code suivante :
name += letters[i];

Un cercle rouge apparaît où vous définissez le point d’arrêt.

Les points d’arrêt constituent une fonctionnalité essentielle pour un débogage


fiable. Vous pouvez définir des points d’arrêt dans lesquels Visual Studio doit
suspendre votre code en cours d’exécution afin de pouvoir examiner les valeurs
des variables ou le comportement de la mémoire, ou savoir si une branche de
code est en cours d’exécution.

2. Pour démarrer le débogage, sélectionnez F5, ou choisissez le bouton Debug Target


dans la barre d’outils Standard, ou choisissez le bouton Démarrer le débogage
dans la barre d’outils Débogage, ou choisissez Déboguer>Démarrer le débogage
dans la barre de menus. L’application démarre et le débogueur s’exécute jusqu'à la
ligne de code où vous avez défini le point d’arrêt.

La flèche jaune pointe vers l’instruction sur laquelle le débogueur s’est arrêté.
L’exécution de l’application est suspendue au même point, l’instruction n’ayant pas
encore été exécutée.

Lorsque l’application n’est pas en cours d’exécution, F5 démarre le débogueur, qui


exécute l’application jusqu’à ce qu’elle atteigne le premier point d’arrêt. Si
l’application est suspendue à un point d’arrêt, F5 continue d’exécuter l’application
jusqu’à ce qu’elle atteigne le point d’arrêt suivant.

Les points d’arrêt sont une fonctionnalité utile lorsque vous connaissez la ligne ou
la section du code que vous souhaitez examiner en détail. Pour plus d’informations
sur les différents types de points d’arrêt que vous pouvez définir, tels que les
points d’arrêt conditionnels, consultez Utilisation de points d’arrêt.

Naviguer dans le code et inspecter les données


à l’aide de conseils sur les données
1. L’exécution du code étant interrompue sur l’instruction name += letters[i] , placez
le curseur sur la variable letters pour afficher une info-bulle de données
montrant la taille du tableau et le type d’élément, char[10] .

7 Notes

L’une des fonctionnalités les plus utiles du débogueur est sa capacité à


inspecter une variable. Souvent, lorsque vous essayez de déboguer un
problème, vous tentez de déterminer si les variables ont des valeurs attendues
à un moment donné. L’affichage des conseils sur les données est un bon
moyen de vérifier cela.

2. Développez la variable letters pour afficher tous ses éléments de tableau et leurs
valeurs.

3. Pointez sur la variable name pour voir sa valeur actuelle, qui est une chaîne vide.

4. Pour faire passer le débogueur à l’instruction suivante, sélectionnez F10, ou


choisissez le bouton Rechercher à pas dans la barre d’outils Déboguer, ou
choisissez Déboguer>Rechercher à pas dans la barre de menus. Sélectionnez F10
deux fois plus pour passer l’appel de méthode SendMessage .
F10 fait avancer le débogueur sans effectuer de pas à pas détaillé dans les
fonctions ou les méthodes, mais leur code s’exécute néanmoins. De cette façon,
nous avons ignoré le débogage du code dans la méthode SendMessage , qui ne
nous intéresse pas pour l’instant.

5. Pour effectuer une itération au sein de la boucle for plusieurs fois, sélectionnez
F10 à plusieurs reprises. Pendant chaque itération de boucle, effectuez une pause
au point d’arrêt, puis pointez sur la variable name pour vérifier sa valeur dans l’info-
bulle de données.

La valeur de la variable change avec chaque itération de la boucle for , affichant


les valeurs de f , puis fr , puis fre , et ainsi de suite. Pour faire avancer le
débogueur dans la boucle plus rapidement, sélectionnez plutôt F5, qui progresse
jusqu’à votre point d’arrêt au lieu de l’instruction suivante.

6. Pendant que l’exécution du code est suspendue dans la boucle for de la méthode
Main , sélectionnez F11, ou choisissez le bouton Pas à pas dans dans la barre

d’outils Debug, ou choisissez Déboguer>Pas à pas dans dans la barre de menus


jusqu’à atteindre l’appel de méthode SendMessage .

Le débogueur doit être suspendu à cette ligne de code :

SendMessage(name, a[i]);

7. Pour passer à pas à la méthode SendMessage , sélectionnez à nouveau F11.

Le pointeur jaune avance dans la méthode SendMessage .

F11 vous aide à examiner plus en détail le flux d’exécution de votre code. Pour
passer à une méthode à partir d’un appel de méthode, sélectionnez F11 . Par
défaut, le débogueur ignore le pas à pas détaillé dans les méthodes non-
utilisateur. Pour en savoir plus sur le débogage de code non-utilisateur, consultez
Simplement mon code.
Une fois que vous avez terminé le débogage de la méthode SendMessage , vous
êtes prêt à revenir à la boucle for de la méthode main .

8. Pour quitter la méthode SendMessage , sélectionnez Maj+F11, ou cliquez sur le


bouton Pas à pas sortant dans la barre d’outils Déboguer, ou choisissez
Déboguer>Pas à pas sortant dans la barre de menus.

La commande Pas à pas sortant reprend l’exécution de l’application et fait avancer


le débogueur jusqu’au retour de la méthode ou fonction active.

Vous voyez le pointeur jaune revenir dans la boucle for de la méthode Main ,
arrêté à l’appel de la méthode SendMessage . Pour plus d’informations sur les
différentes façons de vous déplacer dans votre code, consultez Parcourir le code
dans le débogueur.

Naviguer dans le code à l’aide de Run to Click


1. Sélectionnez F5 pour passer à nouveau au point d’arrêt.

2. Dans l’éditeur de code, pointez sur l’appel de méthode Console.WriteLine dans la


méthode SendMessage jusqu’à ce que le bouton Exécuter pour cliquer sur s’affiche.
L’info-bulle du bouton indique « Lancer l’exécution jusqu’ici. »

3. Sélectionnez le bouton Exécuter jusqu’au clic. Sinon, avec votre curseur à


l’instruction Console.WriteLine , sélectionnez Ctrl+F10. Vous pouvez également
faites un clic droit sur l’appel de méthode Console.WriteLine , puis choisir Exécuter
jusqu’au curseur dans le menu contextuel.

Le débogueur avance jusqu’à l’appel de méthode Console.WriteLine .

L’utilisation du bouton Exécuter pour cliquer sur est similaire à la définition d’un
point d’arrêt temporaire et est pratique pour vous déplacer rapidement dans une
région visible du code de votre application dans un fichier ouvert.
Redémarrer rapidement votre application
Pour réexécuter votre application à partir du début dans le débogueur, sélectionnez
Ctrl+Maj+F5, ou choisissez le bouton Redémarrer dans la barre d’outils Débogage, ou
choisissez Déboguer>Redémarrer dans la barre de menus.

Redémarrer arrête le débogueur, puis le redémarre en une seule étape. Lorsque le


débogueur redémarre, il s’exécute jusqu'au premier point d’arrêt, qui est le point d’arrêt
que vous avez précédemment défini à l’intérieur de la boucle for , et se met ensuite en
pause.

Inspecter des variables avec les fenêtres Autos


et Locals
Les fenêtres Auto et Variables locales affichent les valeurs des variables lorsque vous
déboguez. Les fenêtres sont disponibles uniquement pendant une session de débogage.
La fenêtre Autos affiche les variables utilisées sur la ligne actuelle où se trouve
actuellement le débogueur et sur la ligne précédente. La fenêtre Locals affiche les
variables définies dans l’étendue locale, qui est généralement la fonction ou la méthode
actuelle.

1. Lorsque le débogueur est suspendu, affichez la fenêtre Autos en bas de l’éditeur


de code.

Si la fenêtre Autos est fermée, sélectionnez Ctrl+D, A, ou choisissez


Déboguer>Windows>Autos dans la barre de menus.

2. Pendant que le débogueur est toujours suspendu, consultez la fenêtre Variables


locales, dans un onglet à côté de la fenêtre Auto.

Si la fenêtre Locals est fermée, sélectionnez Ctrl+D, L, ou choisissez


Déboguer>Windows>Locals.

3. Dans la fenêtre Locals, développez la variable letters pour afficher ses éléments
de tableau et leurs valeurs.
Pour plus d’informations sur les fenêtres Autos et Locals, consultez Inspecter les
variables dans les fenêtres Autos et Locals.

Définir un espion
Vous pouvez spécifier une variable, ou une expression, que vous souhaitez garder un œil
sur pendant que vous parcourez le code, en l’ajoutant à la fenêtre Surveillance.

1. Pendant que le débogueur est suspendu, cliquez avec le bouton droit sur la
variable name et choisissez Ajouter une montre.

La fenêtre Espion s’ouvre par défaut en bas de l’éditeur de code.

2. Maintenant que vous avez défini une montre sur la variable name , parcourez votre
code pour voir la valeur de la variable name changer avec chaque itération de
boucle for .

Contrairement aux autres fenêtres de variables, la fenêtre Observation affiche


toujours les variables que vous suivez. Les variables hors portée sont affichées
comme indisponibles.

Pour plus d’informations sur la fenêtre Espion, consultez Observer des variables avec les
fenêtres Espion.

Examiner la pile des appels


La Pile des appels peut vous aider à comprendre le flux d’exécution de votre
application, en montrant l’ordre dans lequel les méthodes et les fonctions sont
appelées.
1. Pendant que le débogueur est suspendu dans la boucle for , consultez la fenêtre
Pile des appels, qui s’ouvre par défaut dans le volet inférieur droit de l’éditeur de
code.

Si la fenêtre Pile des appels est fermée, sélectionnez Ctrl+D, C ou choisissez


Déboguer>Fenêtres>Pile des appels dans la barre de menus.

Dans la fenêtre Pile des appels, vous voyez le pointeur jaune au niveau de la
méthode Main active.

2. Sélectionnez F11 plusieurs fois, jusqu’à ce que le débogueur place l’application en


pause dans la méthode SendMessage .

La ligne supérieure de la fenêtre de la pile d'appels affiche la fonction actuelle, qui


est la méthode SendMessage . La deuxième ligne indique que la méthode
SendMessage a été appelée à partir de la méthode Main .

7 Notes

La fenêtre Pile des appels est similaire à la perspective Débogage dans


certains IDE, comme Eclipse.

Dans la fenêtre Pile des appels, vous pouvez double-cliquer sur une ligne de code
pour accéder à ce code source, ce qui change également l’étendue active
inspectée par le débogueur. Cette action ne fait pas avancer le débogueur.

Vous pouvez également utiliser les menus contextuels de la fenêtre Pile des appels
pour faire d’autres choses. Par exemple, vous pouvez insérer des points d’arrêt
dans des fonctions spécifiées, faire avancer le débogueur avec Exécuter jusqu’au
curseur ou examiner le code source.

Pour plus d’informations sur la pile d’appels , consultez Comment examiner la pile
d’appels.

Étapes suivantes
Dans ce tutoriel, vous avez appris à démarrer le débogueur, à parcourir le code et à
inspecter les variables. Vous souhaiterez peut-être obtenir un aperçu général des
fonctionnalités du débogueur, ainsi que des liens vers plus d’informations.

Premier aperçu du débogueur

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Bien démarrer avec les tests unitaires
Article • 21/01/2025

Utilisez Visual Studio pour définir et exécuter des tests unitaires afin de maintenir
l’intégrité du code, garantir la couverture du code, et rechercher les erreurs et les
défauts avant que vos clients les trouvent. Exécutez vos tests unitaires fréquemment
pour vérifier que votre code fonctionne correctement.

Dans cet article, le code utilise C# et C++, les illustrations sont en C#, mais les concepts
et fonctionnalités s’appliquent aux langages .NET, C++, Python, JavaScript et TypeScript.

Créer des tests unitaires


Cette section explique comment créer un projet de test unitaire.

1. Ouvrez le projet que vous souhaitez tester dans Visual Studio.

Dans le but de démontrer un exemple de test unitaire, cet article teste un simple
projet de console C# ou C++ « Hello World » nommé HelloWorld. L’exemple de
code pour un tel projet est comme suit :

.NET

C#

namespace HelloWorld
{
public class Program
{
public static void Main()
{
Console.WriteLine("Hello World!");
}
}
}

2. Dans l’Explorateur de solutions, sélectionnez le nœud de la solution. Ensuite, dans


la barre de menus supérieure, sélectionnez Fichier>Ajouter>Nouveau projet.

3. Dans la boîte de dialogue nouveau projet, recherchez le projet de test unitaire à


utiliser.
Tapez test dans la zone de recherche pour rechercher un modèle de projet de test
unitaire pour le cadre de test que vous souhaitez utiliser, comme MSTest (C#) ou le
projet de test unitaire natif (C++), puis sélectionnez-le.

À partir de la version 14.8 de Visual Studio 2017, les langages .NET incluent des
modèles intégrés pour NUnit et xUnit. Pour C++, dans cet exemple, sélectionnez le
projet de test unitaire natif, qui utilise Microsoft Native Unit Test Framework. (Pour
utiliser un autre cadre de test C++, consultez Écriture de tests unitaires pour
C/C++). Pour Python, consultez Configurer des tests unitaires dans le code Python
pour configurer votre projet de test.

 Conseil

Pour C# uniquement, vous pouvez créer des projets de test unitaire à partir du
code à l’aide d’une méthode plus rapide. Pour plus d’informations, consultez
Créer des projets de test unitaire et des méthodes de test. Pour utiliser cette
méthode avec .NET Core ou .NET Standard, Visual Studio 2019 ou une version
ultérieure est nécessaire.

L’illustration suivante montre un test unitaire MSTest, pris en charge dans .NET.

Cliquez sur Suivant, choisissez un nom pour le projet de test, puis cliquez sur
Créer.
Le projet est ajouté à votre solution.

4. Dans le projet de test unitaire, ajoutez une référence au projet que vous voulez
tester. Pour ce faire, faites un clic droit sur Références ou Dépendances, puis
choisissez Ajouter une référence ou Ajouter une référence de projet.

5. Sélectionnez le projet qui contient le code que vous allez tester, puis cliquez sur
OK.

6. Ajoutez du code à la méthode de test unitaire.

Par exemple, vous pouvez utiliser le code suivant en sélectionnant l’onglet de


documentation approprié qui correspond à votre cadre de test : MSTest, NUnit ou
xUnit (pris en charge uniquement sur .NET) ou C++ Microsoft Native Unit Test
Framework.

MSTest

C#

using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.IO;
using System;

namespace HelloWorldTests
{
[TestClass]
public class UnitTest1
{
private const string Expected = "Hello World!";
[TestMethod]
public void TestMethod1()
{
using (var sw = new StringWriter())
{
Console.SetOut(sw);
HelloWorld.Program.Main();

var result = sw.ToString().Trim();


Assert.AreEqual(Expected, result);
}
}
}
}

Exécuter des tests unitaires


1. Ouvrez l’Explorateur de tests.

Pour ouvrir l’Explorateur de tests, choisissez Test>Explorateur de tests dans la


barre de menus supérieure (ou appuyez sur Ctrl + E, T).

2. Exécutez vos tests unitaires en cliquant sur Tout exécuter (ou appuyez sur Ctrl + R,
V).
Une fois les tests terminés, une coche verte indique qu’un test a réussi. Une
icône « x » rouge indique qu’un test a échoué.

 Conseil

Vous pouvez utiliser l’Explorateur de tests pour exécuter des tests unitaires à partir
du framework de tests intégré (MSTest) ou à partir de frameworks de tests tiers.
Vous pouvez regrouper les tests en catégories, filtrer la liste de tests, ainsi que
créer, enregistrer et exécuter des sélections de tests. Vous pouvez également
déboguer des tests et analyser les performances des tests et la couverture du code.

Affichez les résultats des tests unitaires en


direct (Visual Studio Enterprise)
Si vous utilisez le framework de tests MSTest, xUnit ou NUnit dans Visual Studio 2017 ou
une version ultérieure, vous pouvez afficher les résultats temps réel de vos tests
unitaires.

7 Notes
Pour suivre ces étapes, Visual Studio Enterprise est requis, ainsi que le code .NET et
l’un des cadres de test suivants : MSTest, xUnit ou NUnit.

1. Activez les tests unitaires en direct à partir du menu Test en choisissant Test>Live
Unit Testing>Démarrer.

2. Affichez les résultats des tests dans la fenêtre d’éditeur de code quand vous
écrivez et modifiez le code.

3. Cliquez sur un indicateur de résultat de test pour afficher plus d’informations,


comme les noms des tests qui couvrent cette méthode.
Pour plus d’informations sur les tests unitaires en direct, consultez Tests unitaires en
direct.

Utiliser un framework de tests tiers


Vous pouvez exécuter des tests unitaires dans Visual Studio à l’aide de cadres de test
tiers tels que NUnit, Boost ou Google C++ Testing Framework, en fonction de votre
langage de programmation. Pour utiliser un cadre tiers :

Utilisez le Gestionnaire de package NuGet pour installer le package NuGet pour le


framework de votre choix.

(.NET) À partir de Visual Studio 2017 version 14.6, Visual Studio inclut des modèles
de projet de test préconfigurés pour les cadres de test NUnit et xUnit. Les modèles
incluent également les packages NuGet nécessaires pour activer la prise en charge.

(C++) Dans Visual Studio 2017 et dans les versions ultérieures, certains cadres tels
que Google C++ Testing Framework sont déjà inclus. Pour plus d’informations,
consultez Écrire des tests unitaires pour C/C++ dans Visual Studio.

Ajoutez un projet de test unitaire :

1. Ouvrez la solution qui contient le code à tester.

2. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis
choisissez Ajouter>Nouveau projet.

3. Sélectionnez un modèle de projet de test unitaire.

Dans cet exemple, sélectionnez NUnit


Le modèle de projet inclut des références NuGet à NUnit et NUnit3TestAdapter.

4. Ajoutez une référence du projet de test au projet qui contient le code à tester.

Cliquez avec le bouton droit sur le projet dans l’Explorateur de solutions, puis
sélectionnez Ajouter>Référence. (Vous pouvez également ajouter une référence à
partir du menu contextuel du nœud Références ou Dépendances.)
5. Ajoutez du code à votre méthode de test.

6. Exécutez le test à partir de l’Explorateur de tests, ou en faisant un clic droit sur le


code de test et en choisissant Exécuter les tests (ou Ctrl + R, T).

Étapes suivantes
Concepts de base des tests unitaires

Créer et exécuter des tests unitaires pour le code managé

Écrire des tests unitaires pour C/C++

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté


Documentation sur le déploiement de
Visual Studio
Découvrez comment déployer des applications, des services et des composants en
utilisant Visual Studio

À propos du déploiement

e VUE D’ENSEMBLE

Présentation du déploiement

Vue d’ensemble de la publication

Applications web ASP.NET

g DIDACTICIEL

Outil de publication

Obtenir les paramètres de publication d’IIS

Publier avec Git

Applications C++

c GUIDE PRATIQUE

Package d’installation

Configurer le projet

Applications .NET./.NET Core

g DIDACTICIEL

Outil de publication

ClickOnce
Package d’installation

c GUIDE PRATIQUE

Empaqueter une application de bureau pour Windows Store

Applications de bureau .NET Framework

g DIDACTICIEL

ClickOnce

Package d’installation

Déployer sur Azure

g DIDACTICIEL

Application ASP.NET Core sur App Service

ASP.NET sur App Service (.NET Framework)

Application web ASP.NET sur Azure Web Apps

Application web ASP.NET Core sur Azure Container Apps

Azure Functions

Déployer avec GitHub Actions

Déployer l’application Entity Framework Core avec GitHub Actions

Déployer des conteneurs Docker

c GUIDE PRATIQUE

Déployer sur Azure Container Registry

Déployer sur Azure App Service

Déployer sur Docker Hub


Déployer sans fichier Dockerfile

Types de déploiements supplémentaires

c GUIDE PRATIQUE

Applications Node.js sur Linux App Service

Applications conteneurisées

Publier des packages NuGet


Créer une base de données et ajouter
des tables dans des applications .NET
Framework à l’aide de Visual Studio
Article • 03/02/2025

7 Notes

Les jeux de données et les classes associées sont des technologies .NET Framework
héritées du début des années 2000 qui permettent aux applications d’utiliser des
données en mémoire pendant que les applications sont déconnectées de la base
de données. Les technologies sont particulièrement utiles pour les applications qui
permettent aux utilisateurs de modifier les données et de conserver les
modifications apportées à la base de données. Bien que les jeux de données soient
une technologie très réussie, nous recommandons que les nouvelles applications
.NET utilisent Entity Framework Core. Entity Framework offre un moyen plus
naturel d’utiliser des données tabulaires en tant que modèles objet et offre une
interface de programmation plus simple.

Vous pouvez utiliser Visual Studio pour créer et mettre à jour un fichier de base de
données local dans SQL Server Express LocalDB. Vous pouvez également créer une base
de données en exécutant des instructions Transact-SQL dans la fenêtre d’outils de
l’Explorateur d’objets SQL Server dans Visual Studio. Dans cette rubrique, vous allez
créer un fichier .mdf et ajouter des tables et des clés à l’aide du Concepteur de tables.

Conditions préalables
Pour effectuer cette procédure pas à pas, vous avez besoin des composants de
développement d'applications de bureau .NET et de stockage et traitement de données
installés dans Visual Studio. Pour les installer, ouvrez visual Studio Installer et choisissez
Modifier (ou Plus>Modifier) en regard de la version de Visual Studio que vous
souhaitez modifier. Consultez Modifier Visual Studio.

7 Notes

Les procédures décrites dans cet article s’appliquent uniquement aux projets
Windows Forms .NET Framework, et non aux projets Windows Forms .NET Core.
Créer un projet et un fichier de base de
données local
1. Créez un projet Application Windows Forms (.NET Framework) et nommez-le
SampleDatabaseWalkthrough.

2. Dans la barre de menus, sélectionnez Projet>Ajouter un nouvel élément. Si vous


voyez une petite boîte de dialogue avec une zone pour un nom de fichier,
choisissez Afficher tous les modèles.

3. Dans la liste des modèles d’élément, faites défiler vers le bas et sélectionnez Base
de données basée sur les services.

4. Nommez la base de données SampleDatabase.mdf, puis sélectionnez Ajouter.

Ajouter une source de données


1. Si la fenêtre Sources de données n’est pas ouverte, ouvrez-la en appuyant sur
Maj+Alt+D ou en sélectionnant Affichage>Autres fenêtres>Sources de données
dans la barre de menus.

2. Dans la fenêtre sources de données, sélectionnez Ajouter une nouvelle source de


données.
L’Assistant Configuration de source de données s’ouvre.

3. Dans la page Choisir un type de source de données, choisissez Base de données,


puis Suivant.

4. Dans la page Choisir un modèle de base de données : cliquez sur Suivant pour
accepter la valeur par défaut (Jeu de données).

5. Dans la page Choisir votre connexion de données, sélectionnez le fichier


SampleDatabase.mdf dans la liste déroulante, puis choisissez Suivant.

6. Dans la page Enregistrer la chaîne de connexion dans le fichier de configuration


de l’application, cliquez sur Suivant.

7. Sur la page Choisissez vos objets de base de données, vous voyez un message
indiquant que la base de données ne contient aucun objet. Choisissez Terminer.

U Attention

Dans une application réelle, vous devez stocker la chaîne de connexion en toute
sécurité, comme décrit dans chaînes de connexion et fichiers de configuration.
Pour une meilleure sécurité, utilisez une méthode d’authentification qui ne repose
pas sur le stockage d’un mot de passe dans la chaîne de connexion, telle que
l’authentification Windows pour une base de données SQL Server locale. Consultez
Enregistrer et modifier les chaînes de connexion.
Afficher les propriétés de la connexion de données
Vous pouvez afficher certaines des propriétés du fichier SampleDatabase.mdf en ouvrant
la fenêtre Propriétés de la connexion de données :

Sélectionnez Affichage> de l’Explorateur d’objets SQL Server (ou Ctrl+\, Ctrl+S)


pour ouvrir la fenêtre de l’Explorateur d’objets SQL Server. Développez
(localdb)\MSSQLLocalDB>Bases de données, puis cliquez avec le bouton droit sur
SampleDatabase.mdf (il peut apparaître avec le chemin complet) et sélectionnez
Propriétés.

Vous pouvez également sélectionner Afficher>Explorateur de serveurs, si cette


fenêtre n’est pas déjà ouverte. Ouvrez la fenêtre Propriétés en développant le
nœud Connexions de données, en cliquant avec le bouton droit sur
SampleDatabase.mdf, puis en sélectionnant Propriétés.

 Conseil

Si vous ne pouvez pas développer le nœud Connexions de données ou si la


connexion SampleDatabase.mdf n’est pas répertoriée, sélectionnez le bouton
Se connecter à la base de données dans la barre d’outils de l’Explorateur de
serveurs. Dans la boîte de dialogue Ajouter une connexion, vérifiez que
Fichier de base de données Microsoft SQL Server est sélectionné sous
Source de données, puis accédez et sélectionnez le fichier
SampleDatabase.mdf. Terminez l’ajout de la connexion en sélectionnant OK.

Pour afficher la chaîne de connexion, vous pouvez ouvrir le fichier App.config dans
l’Explorateur de solutions. Vous devez voir une entrée sous l’élément connectionStrings
qui ressemble au code suivant :

XML

<connectionStrings>
<add
name="SampleDatabaseWalkthrough.Properties.Settings.SampleDatabaseConnection
String"
connectionString="Data Source=
(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SampleDatabase.mdf;I
ntegrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
Créer des tables et des clés à l’aide du
Concepteur de tables
Dans cette section, vous créez deux tables, une clé primaire dans chaque table et
quelques lignes d’exemples de données. vous créez également une clé étrangère pour
spécifier la façon dont les enregistrements d’une table correspondent aux
enregistrements de l’autre table.

Créer la table Customers


1. Dans Explorateur de serveurs ou SQL Server Object Browser, développez le nœud
Connexions de données, puis développez le nœud SampleDatabase.mdf.

2. Cliquez avec le bouton droit sur tables, puis sélectionnez Ajouter une nouvelle
table.

Le Concepteur de tables s’ouvre et affiche une grille avec une ligne par défaut, qui
représente une colonne unique dans la table que vous créez. En ajoutant des
lignes à la grille, vous ajoutez des colonnes dans la table.

3. Dans la grille, ajoutez une ligne pour chacune des entrées suivantes :

ノ Agrandir le tableau

Nom de colonne Type de données Autoriser les valeurs nulles

CustomerID nchar(5) Faux (effacé)

CompanyName nvarchar(50) Faux (effacé)

ContactName nvarchar (50) True (sélectionné)

Phone nvarchar (24) True (sélectionné)

4. Cliquez avec le bouton droit sur la ligne CustomerID , puis sélectionnez Définir la
clé primaire.

5. Cliquez avec le bouton droit sur la ligne par défaut ( Id ), puis sélectionnez
Supprimer.

6. Nommez la table Customers en mettant à jour la première ligne dans le volet de


script pour qu’elle corresponde à l’exemple suivant :

SQL
CREATE TABLE [dbo].[Customers]

7. Ajoutez une contrainte d’index à la table Customers. Ajoutez une virgule à la fin de
la ligne Phone , puis ajoutez l’exemple suivant avant la parenthèse fermante :

SQL

CONSTRAINT [PK_Customers] PRIMARY KEY ([CustomerID])

Vous devriez voir quelque chose comme ceci :

Concepteur de tables

8. Dans le coin supérieur gauche du Concepteur de tables, sélectionnez Mettre à


jour ou appuyez sur Maj+Alt+U.

9. Dans la boîte de dialogue Aperçu des mises à jour de base de données,


sélectionnez Mettre à jour la base de données.

La table Customers est créée dans le fichier de base de données local.

Créer la table Commandes


1. Ajoutez une autre table, puis ajoutez une ligne pour chaque entrée dans le tableau
suivant :

ノ Agrandir le tableau
Nom de colonne Type de données Autoriser les valeurs nulles

OrderID int Faux (effacé)

CustomerID nchar(5) Faux (effacé)

OrderDate datetime True (sélectionné)

OrderQuantity int True (sélectionné)

2. Définissez OrderID comme clé primaire, puis supprimez la ligne par défaut.

3. Nommez la table Orders en mettant à jour la première ligne dans le volet script
pour qu’elle corresponde à l’exemple suivant :

SQL

CREATE TABLE [dbo].[Orders]

4. Ajoutez une contrainte d’index à la table Customers. Ajoutez une virgule à la fin de
la ligne OrderQuantity , puis ajoutez l’exemple suivant avant la parenthèse
fermante :

SQL

CONSTRAINT [PK_Orders] PRIMARY KEY ([OrderId])

5. Dans le coin supérieur gauche du Concepteur de tables, sélectionnez Mettre à


jour ou appuyez sur Maj+Alt+U.

6. Dans la boîte de dialogue Aperçu des mises à jour de base de données,


sélectionnez Mettre à jour la base de données.

La table Orders est créée dans le fichier de base de données local. Si vous
développez le nœud Tables dans Explorateur de Serveurs, vous verrez les deux
tables :
nœud tables

Si vous ne les voyez pas, sélectionnez le bouton Actualiser de la barre d’outils.

Créer une clé étrangère


1. Dans le volet contextuel à droite de la grille Table Designer pour la table
Commandes, cliquez avec le bouton droit sur Foreign Keys, puis sélectionnez
Ajouter une nouvelle clé étrangère.

2. Dans la zone de texte qui s'affiche, remplacez le texte ToTable par Customers.
3. Dans le volet T-SQL, mettez à jour la dernière ligne pour qu’elle corresponde à
l’exemple suivant :

SQL

CONSTRAINT [FK_Orders_Customers] FOREIGN KEY ([CustomerID]) REFERENCES


[Customers]([CustomerID])

4. Dans le coin supérieur gauche du Concepteur de tables, sélectionnez Mettre à


jour (Maj+Alt+U).

5. Dans la boîte de dialogue Aperçu des mises à jour de base de données,


sélectionnez Mettre à jour la base de données.

La clé étrangère est créée.

Remplir les tables avec des données


1. Dans Explorateur de serveurs ou Explorateur d’objets SQL Server, développez le
nœud de la base de données d'exemple.

2. Ouvrez le menu contextuel pour le nœud Tables, sélectionnez Actualiser, puis


développez le nœud Tables.

3. Ouvrez le menu contextuel de la table Customers, puis sélectionnez Afficher les


données de table ou Afficher les données.

4. Ajoutez les données souhaitées pour certains clients.

Vous pouvez spécifier les cinq caractères souhaités en tant qu’ID client, mais
choisissez au moins un caractère que vous pouvez mémoriser pour une utilisation
ultérieure dans cette procédure.

5. Ouvrez le menu contextuel de la table Orders, puis sélectionnez Afficher les


données de la table ou Voir les données.

6. Ajoutez des données pour certaines commandes. Lorsque vous entrez chaque
ligne, elle est enregistrée dans la base de données.

) Important
Assurez-vous que tous les ID de commande et toutes les quantités de
commande sont des entiers et que chaque ID client correspond à une valeur
que vous avez spécifiée dans la colonne CustomerID de la table Customers.

Félicitations! Vous savez maintenant comment créer des tables, les lier à une clé
étrangère et ajouter des données.

Contenu connexe
Accéder aux données dans Visual Studio

Commentaires
Cette page a-t-elle été utile ?  Yes  No

Indiquer des commentaires sur le produit | Demander à la communauté

Vous aimerez peut-être aussi