Développement C# Windows Forms : Tutoriel Pratique
Développement C# Windows Forms : Tutoriel Pratique
Après avoir maîtrisé les applications console, l'étape logique suivante est de créer des expériences de bureau riches en utilisant Windows Forms de Visual Studio. Ce guide vous accompagne à chaque étape — de la configuration du projet à l'ajout de contrôles, au câblage d'événements, et même à l'incorporation de composants avancés comme TreeView et PictureBox.
Bases de Windows Forms
Une application Windows Forms s'exécute nativement sur une machine de bureau. Elle comprend une mise en page visuelle et un ensemble de contrôles (étiquettes, zones de texte, listes, etc.) avec lesquels l'utilisateur interagit.
Voici un formulaire de connexion simple créé en C# :

Éléments clés dans l'exemple :
- Contrôles Label qui décrivent les zones de texte adjacentes.
- Zones de texte pour la saisie du nom d'utilisateur et du mot de passe.
- Un bouton qui déclenche la logique d'authentification.
C# Hello World
Créons un formulaire Windows Forms basique « Hello World » pour comprendre le flux de travail de Visual Studio.
- Ouvrez Visual Studio et sélectionnez Fichier > Nouveau > Projet.

- Choisissez la catégorie Windows et sélectionnez Application Windows Forms (.NET Framework). Nommez le projet
DemoApplicationet cliquez sur OK.
- L'Explorateur de solutions affichera deux fichiers :
Form1.cs– le formulaire visuel.Program.cs– point d'entrée de l'application.
- Ajoutez un Label depuis la Boîte à outils, faites-le glisser sur le formulaire, et définissez sa propriété
TextsurHello World.
- Exécutez l'application – le formulaire affiche « Hello World ».

Ajout de Contrôles à un Formulaire
Voici un guide étape par étape pour assembler un formulaire d'informations utilisateur qui capture le nom, l'adresse, la ville, le sexe et les préférences de cours.
GroupBox – Sectionnement Logique
Faites glisser un GroupBox sur le formulaire et renommez sa propriété Text en Détails Utilisateur.

Label
Placez deux étiquettes à l'intérieur du GroupBox : « Nom » et « Adresse ».

TextBox
Ajoutez deux zones de texte, nommez-les txtNom et txtAdresse.

ListBox – Sélection de Ville
Insérez un ListBox nommé lstVille et remplissez-le avec « Paris », « Lyon » et « Marseille ».

RadioButton – Sexe
Placez deux contrôles RadioButton : rdHomme (Texte : Homme) et rdFemme (Texte : Femme).

CheckBox – Préférence de Cours
Ajoutez deux contrôles CheckBox : chkC (Texte : C#) et chkASP (Texte : ASP.NET).

Button – Soumettre
Déposez un Button nommé btnSoumettre avec Text défini sur « Soumettre ».

Gestion des Événements pour les Contrôles
Les événements se déclenchent en réponse aux actions de l'utilisateur. Voici deux scénarios courants.
ListBox Selection Changed
Double-cliquez sur le contrôle lstVille pour générer un gestionnaire d'événement. Ajoutez le code suivant :
private void lstVille_SelectedIndexChanged(object sender, EventArgs e) {
var selected = lstVille.SelectedItem?.ToString();
if (!string.IsNullOrEmpty(selected))
MessageBox.Show($"Vous avez sélectionné : {selected}");
}
L'exécution de l'application affichera une boîte de message chaque fois qu'une ville est choisie.
Button Click – Soumettre
Double-cliquez sur btnSoumettre pour créer son gestionnaire et insérez :
private void btnSoumettre_Click(object sender, EventArgs e) {
var nom = txtNom.Text;
var adresse = txtAdresse.Text;
MessageBox.Show($"Nom : {nom}\nAdresse : {adresse}");
}
Lorsque vous cliquez sur « Soumettre », les détails saisis sont affichés.
Contrôles TreeView et PictureBox
TreeView – Données Hiérarchiques
Faites glisser un TreeView sur le formulaire. Utilisez la propriété Nodes pour ajouter un nœud racine étiqueté « Racine », puis ajoutez des nœuds enfants « Label », « Button » et « CheckBox ».

PictureBox – Affichage d'Images
Insérez un PictureBox, définissez son SizeMode sur Zoom, et assignez une image via la propriété Image.

Résumé
- Windows Forms permet des applications de bureau qui s'exécutent directement sur la machine de l'utilisateur.
- Les contrôles tels que les étiquettes, zones de texte, listes, boutons radio et cases à cocher sont ajoutés depuis la Boîte à outils.
- Les composants avancés comme
TreeViewetPictureBoxétendent les capacités de l'interface utilisateur. - Les gestionnaires d'événements répondent aux interactions utilisateur, les clics de bouton et sélections de liste étant les plus courants.
Langue C
- Étendre GoPiGo v2 sur Windows 10 IoT Core pour Raspberry Pi 3
- Maîtriser le switch-case en C++ : Syntaxe, utilisation et exemples pratiques
- Maîtriser l'allocation de tableaux dynamiques en C++ : Guide pratique avec exemples de code
- Les structures en C++ expliquées avec un exemple pratique
- Maîtriser std::list en C++ : Syntaxe, Fonctions et Exemples Pratiques
- Classes Abstraites C# : Tutoriel Pratique avec Exemples de Code
- Maîtriser les Collections C# : Tutoriel Pratique avec Exemples Réels
- calloc() en C : Allocation mémoire initialisée à zéro et exemple pratique
- Python Counter dans collections : comptage efficace, mise à jour et opérations arithmétiques