Passer au contenu du pied de page
Iron Academy Logo
Application C#
Application C#

Autres catégories

Création d'une application C#

Tim Corey
1h 35m

Windows Forms App est une interface graphique utilisateur API incluse dans le .NET Framework de Microsoft. La vidéo de Tim Corey intitulée "Intro to Windows Forms in .NET 6" offre une introduction complète à la création d'applications à l'aide de cette technologie. Vous trouverez ci-dessous un aperçu approfondi des concepts abordés dans la vidéo, inspiré de la vidéo de Tim.

Démarrer avec Windows Forms

Tim Corey commence son tutoriel par la mise en place d'un nouveau projet Windows Forms dans .NET 6. Le point de départ consiste à créer un nouveau projet dans Visual Studio en sélectionnant créer, puis à choisir les modèles appropriés et enfin à configurer le formulaire initial (Form1). Il s'agit d'une étape cruciale pour les débutants, qui doivent comprendre comment lancer un projet et faire fonctionner leur premier formulaire.

Mise en place du projet:

Tim explique le processus de création d'un nouveau projet dans Visual Studio, en insistant sur l'importance de sélectionner les modèles et les configurations appropriés pour les applications Windows Forms. Il s'agit notamment de sélectionner le type "Windows Forms App", de nommer le projet de manière appropriée, en l'occurrence "WinFormsDemoApp", et de choisir .NET 6.0 comme cadre de travail cible (2:05).

Configuration du projet

Après avoir cliqué sur créer lorsque la fenêtre du projet s'affiche, vous trouverez un formulaire Windows par défaut avec tous les fichiers modèles dans la fenêtre de l'explorateur de solutions sur le côté gauche de l'éditeur de code. Le formulaire par défaut est basé sur la structure de base de l'interface utilisateur Windows, avec une barre de titre contenant le titre de l'application Windows Forms et des boutons de contrôle pour minimiser, maximiser et fermer.

Explorateur de solutions

Développement rapide d'applications avec Windows Forms

Dans sa vidéo, Tim explore le concept de développement rapide d'applications (RAD) à l'aide de Windows Forms, en mettant l'accent sur sa facilité et son efficacité pour créer des prototypes et des preuves de concept.

Comprendre le développement rapide d'applications

Tim commence par discuter du concept de RAD, qui se concentre sur le développement rapide d'applications pour valider des idées et des fonctionnalités.

Créer une preuve de concept

  1. Utilisation de la fenêtre Toolbox : Tim montre comment les développeurs peuvent tirer parti de la fenêtre Toolbox de Visual Studio, qui contient une variété de contrôles essentiels pour le développement d'applications.

  2. Fonctionnalité de glisser-déposer : il illustre le processus d'ajout de contrôles par glisser-déposer sur la surface de conception, tels que les boutons, les zones de texte, les étiquettes et les cases à cocher.

Construction d'une application de base

  1. Mise en page et conception : Tim explique la flexibilité de la disposition des contrôles sur le formulaire, en les alignant à l'aide des guides d'alignement de Visual Studio.

  2. Copier et coller des contrôles : il montre comment les développeurs peuvent rapidement dupliquer des contrôles à l'aide de raccourcis clavier tels que Ctrl+C et Ctrl+V, rationalisant ainsi le processus de conception.

Éléments fonctionnels

  1. Configuration des contrôles : Tim illustre la configuration de contrôles tels que la barre de progression en ajustant les propriétés directement dans la fenêtre Propriétés. Cette interaction montre les changements en temps réel apportés aux composants visuels de l'application.

  2. Aperçu interactif : en exécutant l'application, Tim montre comment ces composants de base peuvent être utilisés de manière interactive, même si leur fonctionnalité n'est pas encore totalement mise en œuvre.

Exécution d'une application de base

Le concepteur s'est trompé

Tim Corey explique les différentes façons dont le concepteur de Windows Forms peut se briser et comment les développeurs rencontrent généralement ce problème.

  • Modifications inattendues : si les développeurs suppriment ou modifient accidentellement des parties cruciales du code généré automatiquement dans Form1.Designer.cs, telles que les gestionnaires d'événements ou le code d'initialisation des contrôles, le concepteur risque d'échouer.

  • Modifications incohérentes du code : des erreurs peuvent survenir lorsqu'il y a des divergences entre le code édité manuellement et le code généré par le concepteur. Par exemple, la suppression d'un gestionnaire d'événements dans une classe partielle (Form1.cs) mais pas dans l'autre (Form1.Designer.cs) peut entraîner un décalage qui empêche le chargement correct du formulaire dans le concepteur.

Lecture de messages d'erreur

Tim Corey souligne l'importance d'interpréter attentivement les messages d'erreur fournis par Visual Studio lorsqu'il s'agit de résoudre des problèmes liés au concepteur Windows Forms.

  • Détails des messages d'erreur : Tim met en évidence des messages d'erreur spécifiques tels que "Le concepteur ne peut pas traiter le nom inconnu 'form1_load' à la ligne 153", qui indiquent où et pourquoi le concepteur a rencontré un problème.

  • Guide pour la résolution : les messages d'erreur fournissent souvent des mesures à prendre, telles que l'annulation des modifications apportées au code généré ou l'assurance de la cohérence entre toutes les classes partielles (Form1.cs et Form1.Designer.cs).

Suppression du gestionnaire d'événements d'une autre classe partielle également

Tim présente une solution pratique pour résoudre les problèmes de conception causés par des modifications incohérentes des gestionnaires d'événements dans les classes partielles du formulaire.

  • Scénario d'exemple : il explique comment la suppression d'un gestionnaire d'événements (Form1_Load) dans une classe partielle (Form1.cs) mais pas dans l'autre (Form1.Designer.cs) peut empêcher le concepteur de charger correctement le formulaire.

  • Modifications uniformes : en veillant à ce que toutes les modifications soient appliquées de manière cohérente dans les deux classes partielles, les développeurs peuvent restaurer efficacement la fonctionnalité du concepteur Windows Forms sans avoir recours à des mesures drastiques telles que le redémarrage de Visual Studio ou la recréation du projet.

Gérer d'autres événements dans Windows Forms

1. Mécanisme de traitement des événements

La traduction doit rester professionnelle et préserver la précision technique tout en expliquant les caractéristiques et les avantages de ces outils de développement

Tim explique le mécanisme de gestion des événements dans Windows Forms. Lors de l'utilisation du concepteur Windows Forms, Tim note que le fait de double-cliquer sur un contrôle, comme un formulaire lui-même, génère un gestionnaire d'événements par défaut pour ce contrôle. Par exemple, un double-clic sur le formulaire crée un gestionnaire d'événement Load. Tim prévient que si les développeurs suppriment le code à l'intérieur du gestionnaire sans supprimer le gestionnaire d'événements lui-même, cela perturbe le rendu du formulaire dans le concepteur. En effet, le concepteur traduit la présentation visuelle en code, ce qui est essentiel pour que le formulaire s'affiche correctement au moment de l'exécution.

2. Comprendre le formulaire en tant que classe

La traduction doit rester professionnelle, en préservant l'exactitude technique tout en expliquant les caractéristiques et les avantages de ces outils de développement

Tim explique que Windows Forms sont essentiellement des classes héritées de Form, qui fournissent des fonctionnalités telles que la mise en page des formulaires, la gestion des fenêtres (boutons réduire, agrandir, fermer), les capacités de redimensionnement et plus encore. Selon Tim, cet héritage permet aux développeurs d'exploiter des composants d'interface utilisateur prédéfinis (bouton, boîte de texte, étiquette, etc.) et de les manipuler en modifiant leurs propriétés et leurs méthodes.

3. Manipuler les propriétés

La traduction doit rester professionnelle, en préservant l'exactitude technique tout en expliquant les caractéristiques et les avantages de ces outils de développement

Dans la vidéo à 29:16, Tim Corey montre comment les propriétés de Windows Forms, visibles dans la fenêtre Propriétés de Visual Studio, permettent aux développeurs de configurer des éléments visuels tels que des étiquettes (propriété Texte), des boutons (propriété Texte, événement Click) et des barres de progression (propriété Valeur). Tim insiste sur le fait que ces propriétés peuvent être modifiées à la fois au moment de la conception et de l'exécution, influençant ainsi le comportement et l'apparence des contrôles sur le formulaire.

4. Création d'instances multiples

La traduction doit rester professionnelle, en préservant la précision technique tout en expliquant les caractéristiques et les avantages de ces outils de développement

Tim explique que chaque formulaire (Form1, Form2, etc.) dans Windows Forms est une instance d'une classe (Form). En créant plusieurs instances de manière dynamique, les développeurs peuvent gérer efficacement plusieurs fenêtres au sein d'une application. Tim suggère que cette capacité facilite le développement rapide d'applications (RAD), en permettant de concevoir, de personnaliser et d'interconnecter rapidement des formulaires pour créer des interfaces utilisateur complexes.

5. Configuration du démarrage de l'application

La méthode Main dans Program.cs détermine le point de départ de l'application en spécifiant quel formulaire (Form1, Form2, etc.) initialiser en premier en utilisant Application.Run(new Form1()). Tim souligne que la modification de ce formulaire de démarrage change la vue initiale présentée aux utilisateurs lorsqu'ils lancent l'application, ce qui influence le flux de l'application et l'expérience de l'utilisateur.

Menus et barres d'outils dans Windows Forms

Tim démontre la polyvalence de WinForms en présentant des menus et des barres d'outils. Elle explique à quel point il est facile d'ajouter et de personnaliser ces éléments dans le formulaire. Voici les principaux points abordés par Tim :

Ajouter un bandeau d'état

Tim Corey démontre comment améliorer l'interaction utilisateur en ajoutant un contrôle StatusStrip à un formulaire. Ce contrôle inclut des composants comme un ToolStripProgressBar et ToolStripStatusLabel. En utilisant la fonctionnalité "glisser-déposer" de Visual Studio, les développeurs peuvent rapidement incorporer ces éléments pour afficher des informations dynamiques, telles que des mises à jour de la progression des tâches ou des messages d'état.

Personnalisation des bandes de menu

Corey souligne l'importance de respecter les normes Windows lors de la conception des bandes de menu (MenuStrip) pour les applications Windows Forms. Il explique comment utiliser l'esperluette (&) pour désigner les raccourcis clavier et le trait de soulignement (_) pour l'accessibilité, afin que les utilisateurs puissent naviguer dans les menus à l'aide de commandes clavier. Par exemple, l'attribution de &File avec &Exit souligné en E permet aux utilisateurs d'accéder rapidement aux commandes et de les exécuter sans dépendre des interactions avec la souris.

Création de sous-menus et d'événements

Corey illustre comment créer des sous-menus sous MenuStrip et associer des événements aux éléments de menu. En double-cliquant sur les éléments de menu, les développeurs peuvent générer des gestionnaires d'événements et mettre en œuvre des fonctionnalités telles que l'affichage de messages (MessageBox) ou l'exécution d'actions comme la fermeture de l'application (this.Close()). Il souligne l'importance d'adopter des conventions de dénomination appropriées et des bonnes pratiques pour maintenir la lisibilité et l'évolutivité du code.

Menus et barres d'outils

Bonnes pratiques et astuces par Tim Corey

Tim Corey insiste sur le fait qu'il faut commencer un projet WinForms du bon pied en renommant le formulaire par défaut (Form1) par un nom plus significatif, tel que MainForm (1:02:01). Cette étape simple garantit la cohérence de l'ensemble de votre projet, en mettant à jour les références dans votre base de code de manière transparente.

Personnaliser les propriétés des formulaires

Ensuite, Tim souligne l'importance de personnaliser les propriétés des formulaires dès le début. L'ajustement de la propriété Text du formulaire lui-même pour refléter son objectif (par exemple, "Main Form by Tim Corey") améliore la clarté et l'organisation au sein de l'environnement Visual Studio. En outre, la taille de la police (généralement entre 14 et 18 points) et la taille du formulaire (largeur et hauteur) doivent être définies de manière appropriée afin de garantir la lisibilité sans déformer la disposition des autres contrôles.

Gestion des propriétés des contrôles

Corey met en évidence les pièges des propriétés de contrôle par défaut lorsqu'il s'agit de modifier les paramètres d'un formulaire après l'ajout de contrôles. Il ajoute ensuite une étiquette, une zone de texte et un bouton au formulaire et montre qu'il prend automatiquement la taille de police sélectionnée pour le formulaire. Il montre comment la modification de la taille de la police affecte toutes les commandes, en invitant les développeurs à définir ces paramètres dès le départ afin d'éviter toute modification involontaire de la mise en page par la suite. Si vous modifiez la valeur des propriétés de chaque contrôle, celui-ci ne prend pas les valeurs par défaut du formulaire (1:06:33).

Conventions d'appellation pour les contrôles

L'un des principaux enseignements de la vidéo de Tim est l'utilisation de conventions de dénomination significatives pour les contrôles. Au lieu des traditionnels "lblFirstName" ou "txtFirstName", Corey préconise l'utilisation de la camelCase pour les variables (firstNameLabel, firstNameTextBox) et la postfixation du nom du contrôle à la fin.

Gestion des événements et conventions d'appellation

Tim préconise notamment de nommer les contrôles et de gérer les événements de manière cohérente. En nommant les contrôles (sayHelloButton, firstNameTextBox) de manière intuitive dès le départ, les développeurs rationalisent la gestion des événements. Cette approche permet d'éviter toute confusion lors de la gestion d'événements multiples dans les formulaires et renforce la maintenabilité.

Il démontre cela en montrant la différence entre nommer les boutons de manière appropriée et les laisser par défaut comme bouton1, bouton2, etc. Cette approche s'aligne sur les pratiques de codage modernes, permettant une recherche rapide et améliorant la lisibilité, ce qui facilite la compréhension de l'objectif de chaque contrôle en un coup d'œil.

Mise en œuvre de l'ordre des tabulations et de l'accessibilité

Un autre aspect crucial abordé est la définition de l'ordre des tabulations pour les contrôles. Tim explique comment utiliser la propriété TabIndex pour s'assurer que les utilisateurs peuvent naviguer logiquement dans le formulaire à l'aide de la touche Tab. Cela permet non seulement d'améliorer l'expérience de l'utilisateur, mais aussi d'améliorer l'accessibilité pour les utilisateurs qui dépendent de la navigation au clavier.

Passage de données entre formulaires

En développant les capacités de WinForms, Tim parle du passage de données entre plusieurs formulaires. Il montre comment définir des constructeurs dans les formulaires pour faciliter l'échange de données. Cette technique permet aux développeurs d'initialiser de nouveaux formulaires avec des données spécifiques, améliorant ainsi la flexibilité dans la conception des applications.

Conclusion

Le tutoriel de Tim Corey sur les Windows Forms dans .NET 6 est une ressource précieuse pour tous ceux qui cherchent à apprendre le développement d'applications de bureau à l'aide de C#. La vidéo couvre un large éventail de sujets, de la configuration de base aux contrôles avancés et aux meilleures pratiques, fournissant une base solide pour la création d'applications Windows Forms C# professionnelles.

Pour une présentation détaillée avec plus de contexte et des exemples de codage pratiques supplémentaires, vous pouvez regarder le tutoriel vidéo complet de Tim Corey ici.

Sur cette page

Hero Worlddot related to Création d'une application C#
Hero Affiliate related to Création d'une application C#

Gagnez plus en partageant ce que vous aimez

Vous créez du contenu pour les développeurs travaillant avec .NET, C#, Java, Python ou Node.js ? Transformez votre expertise en revenu supplémentaire !

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi