You are on page 1of 53

VB.

NET
Ateliers Windows
Forms

Ateliers Windows Forms
Sommaire
1.

LABEL, TEXTBOX ET BUTTON..............................................................................................................3
1.1.
1.2.
1.3.

2.

CASES À COCHER ET BOUTONS RADIO.............................................................................................6
2.1.
2.2.
2.3.

3.

LA CROISIÈRE S'AMUSE.........................................................................................................................15
CONTRÔLES DE SAISIE..........................................................................................................................17
EVÈNEMENTS CLAVIER.........................................................................................................................19
SÉLECTION ET ÉDITION DE TEXTE........................................................................................................20
SÉLECTION ET ÉDITION DE TEXTE........................................................................................................22
SÉLECTION ET ÉDITION DE TEXTE (ÉVOLUTION)..................................................................................23
MÉTHODE NOMPROPRE........................................................................................................................24

FICHIERS TEXTE.....................................................................................................................................25
5.1.
5.2.
5.3.

6.

LISTBOX – LES LISTES ET LEURS PROPRIÉTÉS.......................................................................................9
LES DIFFÉRENTS TYPES DE LISTES.......................................................................................................10
LISTBOX - APPROFONDISSEMENT.........................................................................................................11
MANIPULATION DES LISTES..................................................................................................................12
LISTES ET TABLEAUX...........................................................................................................................13

SAISIE, SÉLECTION, EDITION.............................................................................................................15
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.

5.

CASES À COCHER....................................................................................................................................6
CASE À COCHER ET BOUTONS RADIO.....................................................................................................7
BOUTONS RADIO.....................................................................................................................................8

LISTES DIVERSES......................................................................................................................................9
3.1.
3.2.
3.3.
3.4.
3.5.

4.

CONCATÉNATION....................................................................................................................................3
ADDITION...............................................................................................................................................4
CALCULETTE..........................................................................................................................................5

BLOC-NOTE SIMPLIFIÉ..........................................................................................................................25
POST-IT.................................................................................................................................................26
FICHIER SÉQUENTIEL............................................................................................................................27

ENRICHISSEMENT INTERFACE GRAPHIQUE.................................................................................30
6.1.
6.2.
6.3.
6.4.
6.5.
6.6.

BLOC-NOTE AMÉLIORÉ........................................................................................................................30
MENUS DÉROULANTS, BARRE D'OUTILS ET BARRE D'ETAT.................................................................33
MENUS DYNAMIQUES..........................................................................................................................34
MENUS CONTEXTUELS.........................................................................................................................36
BARRES DE DÉFILEMENT (HSCROLLBAR ET VSCROLLBAR)...............................................................38
CURSEURS (TRACKBAR)......................................................................................................................39

Ateliers Windows Forms

1. Label, TextBox et Button
1.1. Concaténation
Objectif
Savoir mettre en oeuvre quelques contrôles élémentaires, boutons, zones de texte et étiquettes.
Le but du traitement consiste à réaliser une application permettant de faire la concaténation
(l'addition) de 2 zones.
L’application ne comporte qu’un seul Form représenté ci- dessous :

Résultat attendu

Une fois le texte saisi dans les zones 'Zone 1' et 'Zone 2' la concaténation s'effectue
automatiquement dans la zone 'Résultat' en cliquant sur le bouton du même 'Ok'.

Le bouton 'Remise à blanc' efface les trois zones.
Cliquer sur "Ok" provoque l'exécution du calcul et l'affichage du résultat.

Aucune saisie ne doit pouvoir être faite dans la zone résultat (Utiliser un contrôle de type
Label ou TextBox en lecture seule).

Conseils
D'abord, dessiner l'interface sans se préoccuper du code. Définir les propriétés de chacun des
contrôles, position, taille, enrichissements.
Enfin, rédiger le code déclenché par un Click sur les boutons 'Ok' et 'Remise à Blanc'.
Ajoutez des commentaires (texte précédé de // ou entre /* et */). Les commentaires ne
ralentissent en rien l'exécution du programme (ils ne sont pas compilés) et sont des plus utiles
lors de modifications ultérieures…

Eléments utiles
Classe
Tous contrôles
Tous contrôles
Tous contrôles

Type
P
P
E

Membre
Text
TextAlign
Click

Description
Texte affiché
Alignement du texte (gauche, droite…)
Evènement Click effectué avec la souris

Ateliers Windows Forms

1.2. Addition
Objectif
Réaliser une application permettant d'additionner 2 chiffres.
L’application ne comporte qu’un seul écran décrit ci- dessous :

Résultat attendu

Traitement effectué:
Au fur et à mesure où les chiffres sont saisis dans les zones 'Nombre 1' et 'Nombre 2' le calcul
s'effectue automatiquement dans la zone 'Somme'.

Le bouton 'Remise à blanc' efface les trois zones et place le point d'insertion dans la
zone 'Nombre 1'
Cliquer sur "Quitter" qui provoque l'arrêt du programme avec affichage préalable du
message suivant:

Eléments utiles
Classe
Control
Control
Control
TextBox
double

Type
P
P
E
E
M

Membre
Text
TextAlign
Click
TextChanged
Parse

Description
Texte affiché
Alignement du texte (gauche, droite…)
Evènement Click effectué avec la souris
Evènement Propriété Text modifiée
Convertit la représentation sous forme de
chaîne d'un nombre en nombre en virgule
flottante double précision équivalent.

Si vous avez du temps
Si vous cliquez sur la case de fermeture
et non sur le bouton quitter, le message 'Au revoir'
ne s'affiche pas. Faites en sorte de résoudre ce problème.

Ateliers Windows Forms

1.3. Calculette
Objectif
Savoir créer une application et mettre en œuvre quelques contrôles élémentaires, boutons,
zones de texte et label, zone de groupe ou cadre, boutons d'option.

But du traitement
Partant de l'exemple Addition, nous allons réaliser une calculette.

Résultat attendu

Traitement effectué
Après avoir entré un nombre dans les zones de texte libellées 'Nombre1' et 'Nombre2' et
sélectionné une des options du cadre 'Opérations', on peut :

Cliquer sur 'Ok' déclenche le calcul et l'affichage du résultat.
Le bouton 'Remise à blanc' remet les trois zones à zéro et place le point d'insertion
dans la zone 'Nombre 1'

Tant que le premier nombre n'est pas saisi et qu'aucune option n'est sélectionnée, le bouton
"Ok" doit être inopérant. Dès qu'un calcul devient possible, rendre le bouton utilisable.
Dés qu'une option est choisie, le signe de l'opération (+, -, *, /, V) doit apparaître dans
l'intervalle situé entre les deux nombres.
Aucune saisie ne doit être faite dans la zone résultat. Afin d'éviter de nombreuses erreurs
d'exécution, faites en sorte que les 2 TextBox ne permettent de n'entrer que des chiffres.

Eléments utiles
Classe
Control
TextBox
TextBox
Math

Type
P
E
E
M

Membre
Enabled
KeyPress
LostFocus
Sqrt

Description
Indique si un contrôle est activé
Se produit lorsqu'un caractère est tapé
Se produit lorsque le contrôle perd le focus.
Retourne la racine carrée d'un nombre spécifié

Le bouton réinitialise tous les contrôles (Cases à cochées décochées et Label récapitulatif vide.Ateliers Windows Forms 2. Le bouton 'Fermer' met fin à l'application. Il est couramment utilisé pour présenter à l'utilisateur des alternatives de type Oui/Non ou Vrai/Faux.1. Les options choisies s'affichent alors dans le contrôle Label sur le côté droit. Eléments utiles Classe CheckBox Control Type P P Membre Checked Controls Form Form P P AcceptButton CancelButton Description true/false indique si une case est cochée ou pas Obtient la collection de contrôles contenus dans le contrôle. Si vous avez du temps Faites en sorte que le menu récapitulatif (Label de droite) soit mis à jour au fur et à mesure que l'utilisateur sélectionne ou désélectionne les plats. . Cases à cocher Le contrôle CheckBox Windows Forms indique si une condition est active ou inactive. L'utilisateur pourra utiliser le clavier à la place des boutons 'Ok' et 'Fermer'. Cases à cocher et Boutons radio 2. Bouton d'annulation du formulaire (Echap). La touche Entrée activera le bouton 'Ok' et la touche 'Echap' le bouton 'Fermer'. Il valide son choix en cliquant sur le bouton 'Ok'. Vous pouvez utiliser les contrôles CheckBox en groupes pour afficher plusieurs options parmi lesquelles l'utilisateur peut en sélectionner une ou plusieurs. Résultat attendu Traitement effectué L'utilisateur compose son menu en cochant les différents plats proposés. Bouton d'acceptation du formulaire (Entrée).

Résultat attendu Dans un premier temps.2. Color.Ateliers Windows Forms 2. AliceBlue. Exemples : Color. Proposer à l'utilisateur une boite de dialogue à 'géométrie variable'. rouge. Case à cocher et Boutons radio Objectif Savoir gérer des cases à cocher et un groupe de boutons radios. la boite doit prendre cet aspect: Traitement effectué L’écran dans sa forme initiale permet de cocher "Afficher les couleurs" ce qui déclenche l'extension de la fenêtre et l'affichage du groupe d'options "Couleur" contenant les boutons et jusque là non visible. Se produit lorsque la propriété checked change de valeur. Color. La couleur sélectionnée doit s'appliquer au fond de la feuille.Red.Gold… Crée une structure Color à partir des valeurs des quatre composants ARVB 8 bits (alpha. L'écran dans sa forme étendue permet de sélectionner un des boutons couleur. Un second click remet la boite dans son état initial. . Eléments utiles Elément CheckBox Type P Membre Checked Control Control System.Drawing P P S Height BackColor Color Color M FromArgb CheckBox et RadioButton E CheckedChanged Description true/false indique si une case est cochée ou pas Hauteur du contrôle Couleur de fond Structure donnant accès à un grand nombre de membre nommés de type Color. vert et bleu). la boite se présente de la façon suivante: Une fois la première case sélectionnée.

Les choix réalisés par l'utilisateur ne devront s'afficher dans les deux contrôles de type Label après avoir cliqué sur le bouton 'Options sélectionnées…'. en traitement individuel ou en groupe. Faites en sorte que chacun des boutons radio de gauche disposent de son propre gestionnaire d'évènement et que les 3 boutons radio de droite partagent le même gestionnaire d'évènement. N'oubliez pas de commenter… . Boutons radio Objectif Savoir utiliser les boutons d'option. Résultat attendu Traitement effectué L'écran comporte deux contrôles de type GroupBox. Faites preuve d'imagination.3. Ayez toujours comme objectif. le contrôle est affiché ou pas de type object. 'Mon choix 1' et 'Mon choix 2' contenant des boutons radio. Eléments utiles Elément Control Control Type P P Membre Visible Tag Description true/false. l'efficacité et la concision de votre code.Ateliers Windows Forms 2. permet d'associer des données au contrôle Il existe en fait de multiples manières de traiter ce genre de situation.

Eléments utiles Classe ListBox Items Items ListBox ListBox ListBox ListBox Type P M P P P P E Membre Items Add Count SelectedIndex SelectedItem Text SelectedIndexChanged Description Collection des éléments de la liste Ajoute un élément à la collection Items Nombre d'éléments dans la collection Index de l'élément sélectionné (à partir de 0) Elément sélectionné Texte correspondant à l'élément sélectionné Lors de la sélection d'un élément Si vous avez du temps Essayer de découvrir d'autres membres intéressants de la classe ListBox susceptibles d'être utilisés selon vos besoins. Résultat attendu Traitement effectué En sélectionnant un élément dans la listes les 3 propriété (Items. .Ateliers Windows Forms 3. SelectedIndex et Text) sont automatiquement mises à jour. L'exemple porte sur un contrôle de type ListBox.1.NET.Count. ListBox – Les listes et leurs propriétés Objectif Le but de cet atelier est de découvrir les fonctionnalités de bases communes aux différentes listes proposées dans le Framework. Listes diverses 3.

Cette information se met à jour en temps réel dès que l’utilisateur modifie la sélection d’une des trois listes. Juillet. Décembre. Une dernière étiquette récapitule les mois sélectionnés (cochés pour la checkedListBox) dans les trois listes. Une étiquette indique en permanence le nombre d’éléments cochés dans la checkedListBox. Octobre.Ateliers Windows Forms 3. Mars.Novembre. checkedListBox : Mai. Etendue Collection des éléments sélectionnés Collection des éléments cochés .2. Au chargement du formulaire. Les différents types de Listes Objectif Mettre en œuvre les différents types de listes à notre disposition : ListBox. Multiple. comboBox : Septembre. Juin. Février. Août. Résultat attendu Eléments utiles Classe Tous contrôles Tous contrôles Toutes Listes Toutes Listes Toutes Liste ListBox ListBox checkedListBox Type E E E M P P P P Membre KeyUp MouseUp SelectedIndexChanged Add SelectedItem SelectionMode SelectedItems CheckedItems Description Touche relâchée Souris relâchée Sélection modifiée Ajout d’éléments Eléments sélectionné Sélection Unique. Avril. remplir les différentes liste : ListBox : Janvier. checkedListBox et comboBox. La case à cocher ‘Sélection Multiple’ permet selon son état de sélectionner un ou plusieurs éléments dans la ListBox.

Le peuplement de la liste s'effectue en saisissants des valeurs dans la zone 'Nouvel Elémént' puis en pressant le bouton 'Ajout Liste'. Résultat attendu Traitement effectué Lors du lancement de l'application.Approfondissement Objectif Etre en mesure de réaliser les opérations principales concernant les contrôle de type ListBox. le bouton 'Vider la liste' comme son nom le laisse supposer remet la liste à blanc. Eléments utiles Classe ListBox Items Control int Type P P M M Membre SelectedIndex Count Focus Parse Description Index de l'élément sélectionné (à partir de 0) Nombre d'élément dans la collection Place le curseur (caret) sur le contrôle Convertit la chaîne d'un nombre en nombre entier Si vous avez du temps Faites en sorte qu'un utilisateur maladroit ne puisse pas provoquer une erreur d'exécution de votre application. Une fois un nouvel élément ajouté. . Lorsque l'utilisateur sélectionne un élément. Enfin.3. Exemple : s'il saisit un N° d'élément qui n'existe pas ou sous forme de texte.Ateliers Windows Forms 3. la liste 'LstListe' est vide. Il est également possible de sélectionner un élément en saisissant son N° dans la zone 'Index Elément' et en pressant le bouton 'Sélectionner'. le focus se repositionne sur 'Nouvel Elément' qui est remise à blanc. ListBox . les propriétés affectées s'affichent à droite. Assurez-vous également qu'une valeur ne puisse pas être ajoutée deux fois dans la liste.

le bouton  sera désactivé. le bouton  devra être désactivé. Exemple Si l'utilisateur sélectionne le premier élément d'une liste. de même s'il sélectionne le dernier élément d'une liste. Manipulation des Listes Objectif Approfondissement des Listes Créer une application permettant le déplacement d'éléments d'une liste dans une autre. La liste de droite est vide au départ et est alimentée par les deux boutons '>' et '>>'. Faites en sorte que les différents boutons ne soient accessibles qu'à bon escient. Z-A Trie la liste correspondante par ordre inverse.  Déplace l'élément sélectionné d'une ligne vers le haut (Tri Manuel). faire le tri de chacune des listes en ordre croissant et décroissant en une seule fois. Rôle des différents boutons : > Déplace l'élément sélectionné de la liste de gauche à celle de droite. Résultat attendu Traitement effectué La liste de gauche s'alimente au chargement de la feuille.4. >> Déplace la totalité de la liste de gauche vers celle de droite. .  Déplace l'élément sélectionné d'une ligne vers le bas. < Déplace l'élément sélectionné de la liste de droite à celle de gauche. En option : A-Z Trie la liste correspondante par ordre alphabétique.Ateliers Windows Forms 3. << Déplace la totalité de la liste de droite vers celle de gauche. En option. ainsi que le tri de chacune des listes élément par élément.

On constitue en mémoire un tableau de noms et de matricules. Une fois la sélection effectuée.Ateliers Windows Forms Eléments utiles Classe ListBox ListBox ListBox ListBox ListBox Type M M M M M Membre Items. (On peut cependant imaginer qu'il serait garni progressivement par l'application.Add Items.Clear Items. Attention : Tous les articles n'existent pas dans toutes les couleurs.AddRange Description Ajoute un élément à la ListBox Supprime l'élément spécifié Efface tous les éléments de la liste Insère un élément à une position donnée Ajoute une collection d'éléments à une liste Conseils Avant de vous lancer dans la programmation des différents tris. Bon Tri… 3. ce tableau est initialisé au chargement de l'application.5.Remove Items. Listes et Tableaux Objectif Comprendre l'utilisation d'un tableau deux dimensions. Résultat attendu Traitement effectué Permettre à un utilisateur de choisir un article dans une couleur donnée. ou par la lecture préalable d'un fichier). l'application recherche dans un tableau préalablement constitué en mémoire le tarif correspondant. Pour simplifier. n'hésitez pas à réaliser un algorithme papier / crayon et à le 'faire tourner sur papier' à partir d'un jeux d'essai. Dans un tel cas le pris est à zéro et l'application affiche l'Information 'Objet inexistant dans cette couleur'. . Utiliser des indices pour retrouver une information dans un tableau.Insert Items.

5 52 700 55.5 49.5 800 1200 Vert Blanc Noir Gris 49.5 55.5 1200 50 350 .Ateliers Windows Forms Liste des Prix Chaise en teck Table en teck Chaise en Pvc Table en Pvc Chaise de bureau Prestige Table de bureau Prestige Tapis de souris Visual basic facile Rouge 350.25 750. 5 49 355 1100 55.

.Ateliers Windows Forms 4. Lorsque le focus quitte une date. des chiffres ainsi que des dates. La croisière s'amuse Objectif Réaliser une application permettant de saisir du texte. Le bouton 'Annuler' se contente de fermer la fenêtre. alors que le bouton 'Ok' affiche un message récapitulatif avant de quitter l'application. après avoir renseigné les champs 'Nb Places' et 'Nb Inscrits'. Le nombre de places réservées ne doit pas excéder le nombre de places disponibles. L'objectif est de fournir aux utilisateurs un écran de saisie permettant d'assurer l'intégrité des données. utiliser le contrôle DateTimePicker. Ces deux type de contrôle vous permettent de simplifier votre code en filtrant les données saisies tout en améliorant l'ergonomie d votre logiciel. utiliser le contrôle NumericUpDown. Pour les chiffres. Pour les dates. Sélection.1. Résultat attendu Traitement effectué Le titre de la fenêtre s'actualise en dynamique lors de la saisie de l'intitulé. Attention à vérifier que la date d'arrivée est postérieure à la date de départ. Le bouton 'Ok' ne sera pas accessible si l'utilisateur omet de renseigner ce l'intitulé. le Label de droite affiche automatiquement la durée du séjour. l'étiquette de droite affichera automatiquement le nombre de places disponibles. De même. Edition 4. Saisie.

généralement exprimé sous la forme d'une date ou d'une heure. valeurs numériques à 0. Le nombre de places doit être supérieur à zéro. la boite de dialogue se ferme simplement pour permettre à l'utilisateur de corriger les données. Date de Départ : Date du jour. Mise en forme de chaînes de caractères Si vous avez du temps Les dates saisies ne devront pas être antérieures à la date du jour. La boite de message finale permettra de confirmer ou pas la validité des données. Eléments utiles Elément System Type Membre S DateTime System string S M TimeSpan Format Description Représente un instant.Ateliers Windows Forms Notez que la fenêtre principale ne possède pas de case d'agrandissement ni de réduction et ne peut être redimensionnée par l'utilisateur. Représente un intervalle de temps. étiquettes calculées : "###". Si la réponse est 'Oui'. titre de la fenêtre : "Voyage :" Si la réponse est 'Non'. votre application simulera l'enregistrement des données en réinitialisant les contrôles du formulaire à leurs valeurs par défaut. Date d'Arrivée : Date du jour +1. .

présentée selon le format défini au niveau du panneau de configuration. Contrôles de saisie Objectif Effectuer la validation de données. Une fois les données correctement saisies. le fait de cliquer sur 'Ok' affiche une deuxième fenêtre intitulée 'Consultation' se présentant comme suit: . et on émet un Bip sonore. on place le curseur sur l'erreur. Mettre en oeuvre le contrôle errorProvider.2. Dans ce cas il serait intéressant d'effacer le message en question dès que l'utilisateur effectue la correction. une zone numérique et une zone date. comme dans la feuille ci-dessous. Transférer des informations d'un objet Form à une autre.Ateliers Windows Forms 4. la validité des chiffres de la date de naissance. Il est également possible d'afficher un message dans une barre d'état (contrôle Label). la présence exclusive de chiffres dans le champ 'Code Postal'. Gérer la saisie dans une grille comportant une zone alphabétique. Résultat attendu Traitement effectué Contrôler l'absence de numériques dans les champs 'Nom' et 'Prénom'. En cas d'erreur de saisie.

Le Label faisant office de barre d'état fournit un message d'erreur général. ainsi que le message d'erreur dans la barre d'état. une infobulle l'informe de la nature de l'erreur. IsDigit Indique si un caractère Unicode est classé dans la catégorie des chiffres décimaux.. l'icône d'avertissement associé disparait. l'utilisateur obtient le résultat suivant : Une icône d'avertissement se place à droite de chaque champ non conforme. ShowDialog Affiche le formulaire comme une boîte de dialogue modale. .Ateliers Windows Forms Si les éléments saisis ne se conforment pas aux contraintes spécifiées. Cette fonctionnalité passe par l'utilisation du contrôle errorProvider. Eléments utiles Elément errorProvide r char Type Membre M SetError Form M M Description Définit la chaîne de description de l'erreur pour le contrôle spécifié. Lorsque l'utilisateur déplace la souris sur l'icône d'avertissement. Dès que l'utilisateur entame une correction dans une zone.

Modifiers. Eléments utiles Elément Control Control Control KeyEventArgs KeyPressEventArgs ListBox ListBox Type E E E C C M P Membre KeyDown KeyPress KeyUp KeyCode KeyChar Items.Add SelectedIndex Description Se produit lorsqu'une touche est enfoncée Se produit lorsqu'un caractère est saisi Se produit lorsqu'une touche est relâchée Données d'évènements KeyDown et KeyUp Données d'évènement KeyPress Ajout d'élément dans une liste N° d'élément sélectionné dans une liste Si vous avez du temps Approfondissez les membres fournis par KeyEventArgs et KeyPressEventArgs (Alt. KeyUp. Une fois lune touche relâché votre code devra sélectionner le dernier élément de la liste. Handle. en contrôlant la frappe et le relâchement de chaque touche.3. KeyData. . Evènements Clavier Objectif Savoir gérer le clavier. KeyPress. Ctrl. Shift etc… Faites apparaître les informations qui vous semblent pertinentes dans la liste. Résultat attendu Traitement effectué Ouvrir un contrôle de type ListBox dans laquelle apparaîtra pour chaque touche frappée et pour chaque événement le code de touche (KeyChar) ou le code caractère (KeyChar).Ateliers Windows Forms 4. KeyValue. Les évènements à traiter seront de type KeyDown.

Lorsque l'opérateur appuie sur le bouton 'Majuscules'. . repérer les caractéristiques de la sélection à l'aide des propriétés appropriées (…). Positionner correctement le focus en fin d'opération. travailler sur une zone sélectionnée. Après sélection de ce texte. le texte sélectionné doit être converti en majuscules. Résultat attendu Traitement effectué Entrer du texte dans une zone de saisie. Idem pour le bouton 'Minuscule'.4. utiliser les fonctions de traitement de caractères. Sélection et édition de texte Objectif Savoir traiter du texte. Afficher au bas de la feuille la position du curseur et la taille de la sélection.Ateliers Windows Forms 4.

SelectionStart Obtient ou définit le point de départ du texte sélectionné dans la zone de texte. . Si vous avez du temps Faites en sorte que votre formulaire fonctionne également si l'utilisateur utilise le clavier pour effectuer la sélection et non la souris. SélectionLength Obtient ou définit le nombre de caractères sélectionnés dans la zone de texte. ToUpper Retourne une copie de ce String en majuscules. SelectedText Obtient ou définit une valeur indiquant la couleur du texte sélectionné dans le contrôle.Ateliers Windows Forms Eléments utiles Elément Tout Contrôle Type E TextBox P TextBox P TextBox P String String M M Membre MouseUp Description Se produit lorsque le pointeur de la souris se trouve sur le contrôle et qu'un bouton de la souris est relâché. ToLower Retourne une copie de String en minuscules.

Localiser dans une chaîne de caractères des chiffres pairs. Sélection et édition de texte Objectif Analyser une chaîne de caractères. Proposer deux bouton radio intituler Pair et Impair permettant à vos boutons de rechercher les chiffres correspondants dans la chaîne. Indique si un caractère Unicode est classé dans la catégorie des chiffres décimaux.5. Convertit la représentation sous forme de chaîne d'un nombre en nombre en virgule flottante double précision équivalent. Créer une méthode booléenne 'estChiffrePair' permettant de savoir si tel caractères transmis représente ou pas un chiffre divisible par 2. Localiser dans une chaîne de caractères des chiffres. Eléments utiles Elément string char Type P M Membre Length IsDigit double M Parse string M Format Description Obtient le nombre de caractères dans cette instance.Ateliers Windows Forms 4. Remplace chaque élément de mise en forme dans un String spécifié par l'équivalent textuel de la valeur d'un objet correspondant. . Si vous avez du temps Créer un bouton permettant de localiser le dernier chiffre pair. Permet la mise en forme de chaînes de caractères. Résultat attendu Traitement effectué Analyser une chaîne de caractères afin de détecter la présence du premier chiffre pair et afficher sa position dans l’étiquette faisant office de barre détat.

Ateliers Windows Forms 4. afficher un message adéquat. Une fois que tous les chiffres pairs ont été localisés le bouton reprend son libellé initial. Sélection et édition de texte (évolution) Objectif Analyser une chaîne de caractères et gérer des compteurs Résultat attendu Démarrage de l'application Premier Clic Avant dernier Clic Dernier Clic Traitement effectué Analyser une chaîne de caractères afin de détecter la présence de tous les chiffres pairs et afficher leurs positions dans l’étiquette faisant office de barre d'état. Dans le cas contraire.6. Après avoir localisé le premier chiffre pair. . le bouton de commande change d'intitulé pour indiquer que sont action a changé (la recherche s'effectue à partir de la position courante).

Retourne une copie de String en majuscules. . Méthode NomPropre Objectif Créer une classe proposant une méthode intitulée NomPropre.7. Si vous avez du temps Améliorer votre méthode afin qu’elle transforme la première lettre de chaque mot en majuscule.Ateliers Windows Forms 4. Vous transmettez à la méthode le contenu de votre zone de texte. Résultat attendu Après avoir cliqué sur le bouton 'Nom Propre' Traitement effectué Le fait de cliquer sur le bouton 'Nom Propre' a pour effet d'invoquer une méthode NomPropre d'une classe que vous aurez créée dans ce but. Eléments utiles Elément string char Type M M Membre Substring ToUpper Description Extrait une sous-chaîne de l'instance spécifiée. et vous affectez le résultat de votre méthode au contenu de votre zone de texte.

txt' dans la zone de texte. Faites en sorte que la zone de texte se dimensionne en même temps que la fenêtre. Permet entre autre de lire un fichier texte. Le bouton Enregistrer sauvegarde le texte dans un fichier intitulé 'texte.IO Type C StreamWriter M StreamWriter M System. Le bouton 'Ouvrir' permet à l'utilisateur de recharger le fichier 'texte. StreamReader Implémente TextReader qui lit les caractères à partir d'un flux d'octets dans un codage particulier. Le bouton 'Effacer' remet la zone de texte à blanc. permet d'effectuer la sauvegarde du fichier.IO C StreamReader M StreamReader M Membre StreamWriter Description Implémente TextWriter pour écrire les caractères dans un flux selon un codage particulier. ReadToEnd Lit le flux entre la position actuelle et la fin du flux.Ateliers Windows Forms 5. Résultat attendu Traitement effectué Utiliser un contrôle de type TextBox pour la saisie.1. il devront toujours se situer en bas à droite du formulaire.txt'. Permet entre autre d'écrire dans un fichier texte. Fichiers Texte 5. . Bloc-Note simplifié Objectif Créer une application permettant à l'utilisateur de saisir un texte qu'il sera en mesure d'enregistrer puis d'ouvrir lors d'une prochaine utilisation. Write Écrit dans le flux. Quand aux boutons de commandes. Close Ferme le StreamWriter en cours et le flux sousjacent. Dans notre cas. Eléments utiles Elément System. Close Ferme StreamReader et le flux sous-jacent et libère les ressources du système associées au lecteur.

2.Ateliers Windows Forms Si vous avez du temps Réalisez le même atelier en utilisant un contrôle RichTextBox à la place du contrôle TextBox. La sauvegarde s'effectue lors de la fermeture du programme. si ce n'est que le fichier texte est chargé automatiquement en même temps de l'application. Se produit avant le premier affichage d'un formulaire. 5. Se produit pendant la fermeture du formulaire. Eléments utiles Elément Type RichTextBox M Membre LoadFile RichTextBox M SaveFile Description Charge le contenu d'un fichier dans le contrôle RichTextBox. Résultat attendu Traitement effectué Cette application est très proche des deux ateliers précédents. Enregistre le contenu du contrôle RichTextBox dans un fichier. Eléments utiles Elément Form Form Form Type P E E Membre FormBorderStyle Load Closing Description Obtient ou définit le style de bordure du formulaire. Notez que la barre de titre de la fenêtre est de type 'Barre d'outils' ou 'Palette Windows'. Le contrôle RichTextBox est au WordPad de Windows ce que le TextBox est au Bloc-Notes. Post-It Objectif Créer une application permettant à l'utilisateur de saisir un texte qu'il sera sauvegardé automatiquement à la fermeture du formulaire. .

3. contient un QCM contenant plus de 500 questions/réponses.Ateliers Windows Forms 5. un document d’une cinquantaine de pages. Résultat attendu Votre application sera validée sur un résultat strictement identique à celui présenté cidessus. Fichier Séquentiel Objectif Savoir utiliser un fichier séquentiel en lecture / écriture. Traitement effectué Analyser et traiter un gros fichier texte (ascii) afin de l’exploiter dans vos applications futures. Votre travail consiste à parcourir le fichier dont voici un extrait : . Utiliser les instructions de recherche dans une chaîne de caractères. Ce fichier.

les afficher dans une ListBox et les écrire dans le fichier texte en sortie. Écrit dans le flux de texte une chaîne suivie d'un terminateur de ligne. 3. Obtient le nombre de caractères dans cette instance. Extrait une sous-chaîne de l'instance spécifiée. Compter et afficher le nombre total de lignes dans le fichier source (y compris les lignes blanches éventuelles). Lit une ligne de caractères à partir du flux en cours et retourne les données sous forme de chaîne. Retourne la position d'une chaîne de caractères dans une autre. Compter et afficher le nombre de questions trouvées. Le fichier produit en sortie doit correspondre à l'exemple suivant: Notez que l'on commence par écrire la date de création en entête du fichier.IO C StreamReader StreamWriter M WriteLine StreamReader M ReadLine DateTime P Now string P Length string M IndexOf string string M M Substring ToUpper Description Implémente TextWriter pour écrire les caractères dans un flux selon un codage particulier. 5. Afficher à la demande. Obtient un DateTime correspondant à la date et à l'heure locales actuelles sur cet ordinateur. Eléments utiles Elément System.IO Type Membre C StreamWriter System. Implémente TextReader qui lit les caractères à partir d'un flux d'octets dans un codage particulier. 6. Compter et afficher le nombre total de caractères dans le fichier source (y compris les espaces). Compter et afficher le nombre réel de caractères valides (espaces exclus). Retourne une copie de String en majuscules. le fichier texte résultat dans le bloc note. Permet entre autre de lire un fichier texte. 4. Permet entre autre d'écrire dans un fichier texte. .Ateliers Windows Forms 1. Compter et afficher le nombre réel de lignes valides. 2.

Si vous avez du temps Dans l'état actuel des choses.Diagnostics C Process Process Start M Ferme le StreamWriter en cours et le flux sousjacent. . en examinant attentivement votre fichier de sortie. Fournit l'accès à des processus locaux ainsi que distants.Ateliers Windows Forms StreamWriter M Close StreamReader M Close System. vous remarquerez certaines imperfections… dont voici quelques exemples: Modifiez votre algorithme pour remédier au problème. Ferme StreamReader et le flux sous-jacent et libère les ressources du système associées au lecteur. et vous permet de démarrer et d'arrêter des processus système locaux. Remarque Prenez le temps d'analyser le fonctionnement d'une telle application qui correspond à une situation susceptible d'être rencontrée en entreprise. Lance une ressource de processus et l'associe à un composant Process.

Ateliers Windows Forms 6.1. Polices de caractères. Bloc-Note amélioré Objectif Mettre en œuvre les dialogues communes aux applications Windows. Enregistrer sous…. Couleurs…) Résultat attendu Après avoir cliqué sur le bouton 'Enregistrer' . (Ouvrir. Enrichissement Interface Graphique 6.

Ouvrir Affiche le dialogue 'Ouvrir'. votre application propose à l'utilisateur de le faire. . Même remarque que précédemment concernant le document courant.Ateliers Windows Forms Après avoir cliqué sur le bouton 'Caractères' Après avoir cliqué sur un bouton 'Couleur…' Traitement effectué Fonctionnalité associée aux boutons: Nouveau Crée un nouveau document. et selon les besoins le dialogue 'Enregistrer sous' est utilisé. Attention si le document en cours n'a pas été enregistrer au moment du clic. Selon la réponse de l'utilisateur. La zone de saisie est remise à blanc.

Ateliers Windows Forms Enregistrer Caractères Couleur Texte Couleur Fond Enregistre le document en cours. Color Obtient ou définit la couleur sélectionnée par l'utilisateur. avec ou sans icône. Offre à l'utilisateur la possibilité de modifier la couleur du texte par le biais du dialogue commun 'Couleurs'. Eléments utiles Elément TextBox Type P MessageBox M Windows.Forms C Windows. .Forms C Windows. FontDialog Représente une boîte de dialogue commune affichant la liste des polices actuellement installées sur le système. SaveFileDialog Représente une boîte de dialogue commune qui permet à l'utilisateur de spécifier les options d'enregistrement d'un fichier. avec ou sans titre personnalisé. Même chose pour la couleur de fond de la zone de texte. OpenFileDialog Représente une boîte de dialogue commune pour afficher le contrôle qui permet à l'utilisateur d'ouvrir un fichier. Show Affiche une boite de message. la boite de dialogue 'Enregistrer sous' s'affiche. A l'ouverture. elle reprend les caractéristiques de la police en cours. ainsi que les contrôles permettant à l'utilisateur de définir des couleurs personnalisées.Forms C Windows. A l'ouverture la boite affiche la couleur en cours. ShowDialog Affiche le dialogue concerné FileName Obtient ou définit une chaîne comportant le nom de fichier sélectionné dans la boîte de dialogue Fichier. La boite de dialogue 'Police' est utilisée. S'il s'agit du premier enregistrement. avec un ou plusieurs boutons. qui détermine les choix disponibles dans les zones « Enregistrer sous » ou « Types de fichiers » de la boîte de dialogue. la sauvegarde se fait directement sans aucune confirmation. Font Obtient ou définit la police sélectionnée. (Enregistrer sous ou Ouvrir) Filter Obtient ou définit la chaîne de filtrage des noms de fichier en cours. ColorDialog Représente une boîte de dialogue commune affichant les couleurs disponibles. Si vous avez du temps Mettez en œuvre la gestion de erreurs afin de prévenir tout problème d'ouverture ou d'enregistrement de fichier. Si le document en cours a déjà fait l'objet d'enregistrements précédents. Permet de modifier la police de caractères de la zone de saisie.Forms C CommonDialog FileDialog M P FileDialog P FontDialog ColorDialog P P Membre Modified Description Obtient ou définit une valeur qui indique que le contrôle zone de texte a été modifié par l'utilisateur depuis la création du contrôle ou la précédente définition du contenu du contrôle.

Selon les actions effectuées.Ateliers Windows Forms 6. Enregistrer.2. Notez l'utilisation d'une barre d'état permettant d'afficher non seulement un message mais également des informations système telles que la date et l'heure. Les boutons seront remplacés par des menus déroulants de type MenuStrip. Barre d'outils et Barre d'Etat Objectif Améliorer l'interface graphique de l'atelier précédent en utilisant des éléments normalisés. Seule l'interface est améliorée. Utiliser pour la barre d'état un contrôle StatusStrip offrant plus de possibilités qu'un simple Label. . Quitter. Menus déroulants. Les différents boutons reproduisent toutes les fonctionnalités des menus. Et si vous êtes curieux. Ouvrir. ainsi que par une barre d'outils de type ToolStrip. Ouverture du fichier…) Les boutons seront dotés d'info-bulles expliquant leur fonction. ne manquez pas de découvrir les vertus du ToolStripContainer Résultat attendu Traitement effectué Cet atelier comporte les mêmes traitements que ce du précédent. Le menu Fichier comporte les options suivantes: Nouveau. la barre d'état affichera des messages appropriés (Enregistrement effectué.

Ateliers Windows Forms 6. Lorsque le menu Police est affiché. Une fois le menu chargé. Résultat attendu Traitement effectué Au lancement de l'application. 'Polices' est un bouton bascule faisant apparaître un troisième menu contenant la liste des polices de caractères installées sur le système. Le choix d'une police dans le menu provoque sont repérage (Checked) et son application au texte du prénom affiché. le bouton correspondant permet de le détruire.3. Une barre d'outils dotée de 3 boutons propose les fonctionnalités suivantes: 'Prénoms' est un bouton bascule permettant de charge et décharger une liste de prénoms dans le menu du même nom. Menus Dynamiques Objectif Il s'agit de mettre en œuvre des menus déroulants par programme. la sélection d'un prénom provoque son affichage dans le formulaire et sont repérage (Checked) dans le menu. Le menu 'Prénoms' est vide. Un deuxième click sur le bouton 'Prénom' supprime les éléments du menu 'Prénoms'. . votre formulaire principal est doté de deux menus. Le menu 'Fichier' comporte la seule option 'Quitter'.

Cette propriété est de type MenuStrip. mais qui comportent des variations de styles. Représente un élément individuel affiché dans un MainMenuStrip ou dans un ContextMenuStrip. ContextMenuStrip ToolStripMenuItem M DropDownItems ToolStripMenuItem P Checked ToolStripMenuItem E Click DropDownItems DropDownItems M Add M Clear Drawing C FontFamily FontFamily P Families P Text Description Représente la structure de menus d'un formulaire. Définit un groupe de polices dont le design de base est similaire.Ateliers Windows Forms 'Quitter' est un simple bouton poussoir permettant de quitter l'application. Se produit suite à un clic sur l'élément de menu ou à la sélection de cet élément à l'aide d'une touche de raccourci ou d'une touche d'accès rapide. (Peut être assimilé à une barre de menus). . Supprime tous les objets de la collection d'éléments de menu. ToolStripMenuItem est une classe dérivée de ToolStripItem Obtient une valeur qui indique la collection d'objets associée au menu. Ajoute un nouvel élément à la collection. Obtient ou définit une valeur qui indique la légende de l'élément de menu. Exemple : 'Arial' Retourne un tableau contenant tous les objets FontFamily associés au contexte graphique en cours. Obtient ou définit une valeur qui indique si une coche apparaît en regard du texte de l'élément de menu. Eléments utiles Elément Form Membre P MainMenuStrip Forms C MenuStrip Form C ToolStripMenuItem MainMenuStrip. Fournit un système de menus d'un formulaire.

En choisissant une couleur. Résultat attendu Traitement effectué Il est désormais possible d'afficher un menu contextuel par clic droit sur le prénom affiché. Fournit un conteneur pour les objets barre d'outils Windows.4. . La police sélectionnée s'applique au prénom affiché. Obtient ou définit une valeur indiquant si l’élément est coché.Ateliers Windows Forms FontFamily Forms P Name C ToolStrip ToolStripButton. Obtient ou définit une valeur indiquant si l’élément doit automatiquement apparaître activé et désactivé lorsque l'utilisateur clique dessus. Ce menu offre deux sous menus. 'Polices' et 'Couleurs'. Menus Contextuels Objectif A partir de l'atelier précédent. celle-ci s'applique au prénom affiché. Celui-ci est alimenté et vidé par le bouton bascule 'Polices'. 6. ToolStripMenuItem P Checked Obtient le nom de cet objet FontFamily. mettre en œuvre un menu contextuel ou PopUp. Le sous-menu 'Polices' est dynamique. ToolStripMenuItem P CheckOnClick ToolStripButton. Le sous-menu 'Couleurs' est statique dans la mesure où les noms de couleurs sont renseignés lors de la conception de l'application.

. DropDownItems M Clear Supprime tous les objets de la collection d'éléments de menu. ContextMenuStrip P DropDownItems Obtient une valeur qui indique la collection d'objets associée au menu.Ateliers Windows Forms Eléments utiles Elément Type Membre Description Forms C ContextMenuStrip Représente un menu contextuel. DropDownItems M Add Ajoute un novel élément de menu à la collection.

5. vert et bleu). Donner la possibilité à l'utilisateur de taper chaque couleur sous forme de chiffre dans une zone de texte et d'ajuster les éléments de la fenêtre en fonction des valeurs saisies. . Avec un peu de réflexion quelques lignes de code suffisent. Se produit lorsque la case de défilement a été déplacée par une action de la souris ou du clavier. L'exemple ci-dessus en compte 4. La couleur résultant du mélange des trois est affichée à l'aide d'une quatrième étiquette au bas de la feuille. rouge. Crée une structure Color à partir des valeurs des quatre composants ARVB 8 bits (alpha. Résultat attendu Traitement effectué Effectuer le mélange des couleurs à partir des trois fondamentales Rouge. Vert et Bleu. Si vous avez du temps Il serait intéressant d'afficher sous forme numérique la valeur de chaque couleur.Ateliers Windows Forms 6. en décimal et pourquoi pas en Hexadécimal? Il est également possible de faire varier une barre de défilement lui assignant une valeur numérique. Eléments utiles Elément ScrollBar Type Membre P Value ScrollBar E Scroll Color M FromArgb Description Obtient ou définit une valeur numérique qui représente la position actuelle de la zone de défilement sur le contrôle barre de défilement. En agissant sur chaque barre de défilement on fait varier la couleur correspondante et la couleur résultante. Bonne réflexion. Barres de Défilement (HScrollBar et VScrollBar) Objectif Savoir mettre en oeuvre des barres de défilements (ascenseurs) et afficher des couleurs variables.

Se produit lorsque la propriété Value a été modifiée. Obtient ou définit la limite inférieure de la plage avec laquelle cette TrackBar fonctionne. Se produit lorsqu'une action de la souris ou du clavier déplace le curseur.6.Ateliers Windows Forms 6. La modification d'une valeur numérique provoque le même effet sur las différents éléments. Curseurs (TrackBar) Objectif Adapter l’atelier précédent en utilisant des contrôle de type TrackBar et NumericUpDown. . Obtient ou définit une valeur numérique qui représente la position actuelle du curseur sur la barre de suivi. Obtient ou définit la limite supérieure de la plage avec laquelle cette TrackBar fonctionne. Eléments utiles Elément TrackBar Type Membre P Orientation TrackBar et P NumericUpDown TrackBar et P NumericUpDown TrackBar et P NumericUpDown Minimum TrackBar Scroll E NumericUpDown E Maximum Value ValueChanged Description Obtient ou définit une valeur indiquant l'orientation horizontale ou verticale de la barre de suivi. Résultat attendu Traitement effectué En jouant sur les curseurs les différentes couleurs s'ajustent automatiquement ainsi que les valeurs numériques correspondantes.

La ligne de l’élément en cours est entièrement sélectionnée. puis gérer les différents modes d’affichages proposés par le contrôle. petites icônes. . Résultat attendu Traitement effectué Le constructeur du formulaire se chargera d’alimenter de contrôle ListView avec des données. (Les icônes vous sont fournies par votre formateur) Les différents boutons permettront de changer le mode d’affichage de la liste (Grandes icônes.Ateliers Windows Forms 6. Liste et Détail).7. ListView et ImageList Objectif Mettre en œuvre et peupler un contrôle ListView. Vous remarquerez que le bouton correspondant à l’affichage en cours est désactivé.

LargeImageList Obtient ou définit le ImageList à utiliser lors de l'affichage des éléments sous forme de grandes icônes dans le contrôle. Exemple : Double-Clic sur Dupont Si vous avez vraiment du temps Pourquoi ne pas prévoir la modification des informations « Qualité » et « Caractère » ? . Images Collection des images (de type ImageCollection) stockées dans cette liste d'images. Le fait de double-cliquer sur un élément affiche le dialogue suivant. La propriété Tag peut être utilisée pour mémoriser la vue (View) qui sera appliquée par chacun des boutons. SmallImageList Obtient ou définit l'objet ImageList à utiliser lors de l'affichage des éléments sous forme de petites icônes dans le contrôle. Add Ajoute un élément à la collection. View Obtient ou définit la façon d'afficher les éléments dans le contrôle. ImageIndex Obtient ou définit l'index de l'image qui s'affiche pour l'élément. Add Ajoute un sous-élément à la collection. Si vous avez du temps Faites en sorte que les quatre boutons utilisent le même gestionnaire d’évènement. SubItems Obtient une collection contenant tous les souséléments de l'élément. ImageSize Obtient ou définit la taille des images dans la liste d'images. Items Collection qui contient tous les éléments (de type ListViewItem) du contrôle. FullRowSelect Obtient ou définit une valeur qui indique si le fait de cliquer sur un élément sélectionne aussi tous ses sous-éléments.Ateliers Windows Forms Eléments utiles Elément ListView Type Membre P Columns ListView P Items M ListViewItem P ListViewItem P SubItems ListView M P ListView P ListView P ListView P ImageList P ImageList P Description Collection contenant tous les en-têtes de colonne (de type ColumnHeader) qui apparaissent dans le contrôle.

Ateliers Windows Forms 6.Médiathèque Objectif Découvrir les fonctionnalités et les subtilités du contrôle TreeView. d’une StatusBar et de 3 contrôles de type Button. Pour supprimer un noeud. Pour ajouter un nœud il suffit d’invoquer la méthode Add de la collection Nodes à laquelle vous voulez rattacher ce nouvel élément. Quatre dossiers (Livre. Vous noterez que chaque type de média est doté d’un icône adaptée. et ainsi de suite. CD.8. appliquez-lui la méthode Remove. La barre d’état sera dotée de deux volets (Panels). alors que le bouton « Réduire » fera le contraire.NET vous procure un assistant permettant de peupler votre TreeView en mode Design. Le premier volet affichera le type de média sélectionné. Au démarrage de l’application votre TreeView contiendra les données présentées cidessus. Chaque objet TreeNode possède lui-même une collection Nodes de ses nœuds enfants. TreeView . Une instance de ce type est constituée d’une collection Nodes d’objets de type TreeNode. Chaque dossier contiendra quelques éléments. Résultat attendu Traitement effectué Créer un formulaire doté d’un contrôle TreeView. Le bouton « Développer » permettra comme son nom l’indique de développer l’ensemble de l’arborescence. L’IDE Visual Studio. Cet assistant est accessible à partir de la palette des propriétés. Le deuxième affichera le nombre d’éléments dans la catégorie sélectionnée ou le nom du média selon le cas : . DVD et Vidéo) représenteront les types de médias de votre Médiathèque.

le bouton s’intitulera « Ajouter » et permettra d’ajouter un média dans la catégorie en question.  Lorsqu’un type de média sera sélectionné (Dossier).  Lorsqu’un média sera sélectionné. Ajout d’un nouveau média .Ateliers Windows Forms Il va sans dire que vos contrôle devront se déplacer / redimensionner lors du redimensionnent de la fenêtre. le bouton s’intitulera « Supprimer » et permettra de supprimer ce média après confirmation de l’utilisateur. Le dernier bouton est le plus intéressant.

Nodes Obtient la collection des nœuds d'arbre assignés au contrôle TreeView. Parent Obtient le nœud d'arbre parent du nœud d'arbre en cours. SelectedImageIndex Obtient ou définit la valeur d'index de liste de l'image affichée quand le nœud d'arbre est dans l'état sélectionné. Add Ajoute un nouveau nœud d'arbre à la collection. ImageIndex Obtient ou définit la valeur d'index de liste de l'image par défaut qui est affichée par les nœuds d'arbre. ImageIndex Obtient ou définit la valeur d'index de liste de l'image affichée quand le nœud d'arbre est dans l'état non sélectionné.Ateliers Windows Forms Suppression d’un média Eléments utiles Elément TreeView Type Membre P HideSelection Description Obtient ou définit une valeur indiquant si le nœud d'arbre sélectionné reste affiché en surbrillance même quand l'arborescence a perdu le focus. ImageList Obtient ou définit l’ImageList qui contient les objets Image utilisés par les nœuds d'arbre. Collapse Réduit le nœud d'arbre. Expand Développe le nœud d'arbre. Remove Supprime le nœud d'arbre spécifié de la collection de nœuds d'arbre. TreeView P TreeView P Nodes TreeView P P TreeView P Nodes Nodes M M TreeView P TreeNode P TreeNode P TreeNode P TreeNode P TreeNode TreeNode M M . SelectedNode Obtient ou définit le nœud d'arbre qui est actuellement sélectionné dans le contrôle TreeView. Count Nombre d’éléments de la collection. Text Obtient ou définit le texte affiché dans l'étiquette du nœud d'arbre. SelectedImageIndex Obtient ou définit la valeur d'index de liste de l'image affichée lorsqu'un nœud d'arbre est sélectionné.

9. Si la corbeille est vide. La corbeille changera d’aspect pour indiquer qu’elle contient le texte venant d’y être déposé. Résultat attendu Traitement effectué L’utilisateur de votre application pourra faire glisser le contenu de la première zone de texte vers la seconde ou vers la corbeille. Un clic droit sur la corbeille proposera un menu contextuel proposant de restaurer son contenu (vers la zone de texte 1). l’option restaurer devra être désactivée. Se produit après la sélection du nœud d'arbre. Si vous avez du temps    Ajouter la possibilité de renommer un média.Ateliers Windows Forms TreeView TreeView TreeView M M E CollapseAll ExpandAll AfterSelect Réduit tous les nœuds d'arbre. touche {Ctrl} maintenue : le texte sera copié de la première zone vers la seconde.  Zone de texte1 vers zone de texte2. Glisser – Déplacer (Drag & Drop) Objectif Découvrir les base du glisser déplacer. Développe tous les nœuds d'arbre. renommer un média à l’aide de la touche {F2}… 6.  Zone de texte1 vers la corbeille : le texte sera effacé de la première zone.  Zone de texte1 vers zone de texte2 : le texte sera déplacé de la première zone vers la seconde. Permettez à l’utilisateur de supprimer un média au clavier à l’aide de la touche {Suppr}. Mettez en ouvres des menus contextuels proposant les options appropriées selon le nœud sélectionné. .

Left Le bouton gauche de la souris a été enfoncé. Move Les données issues de la source de glissement sont déplacées vers la cible de déplacement. Data Obtient les données associées à cet événement.Ateliers Windows Forms Avant restauration Après restauration Eléments utiles Elément Control Type Membre P AllowDrop Control E MouseEventArgs P MouseButtons Control DragDropEffects P M P DragDropEffects P Control E Control DragEventArgs Data E P M Description Obtient ou définit une valeur indiquant si le contrôle peut accepter des données que l'utilisateur y fait glisser. GetData Extrait les données associées au format de données spécifié. . L’option « Restaurer » de la corbeille devra rétablir son contenu dans la zone de texte appropriée. Si vous avez du temps Faites en sorte que le glisser déplacer puisse fonctionner à partir de la deuxième zone de texte. Button Obtient le bouton de la souris sur lequel l'utilisateur a appuyé. DoDragDrop Démarre une opération glisser-déplacer. DragEnter Se produit lorsqu'un objet est déplacé dans les limites d'un contrôle. Copy Les données sont copiées dans la cible de déplacement. MouseDown Se produit lorsque le pointeur de la souris se trouve sur le contrôle et qu'un bouton de la souris est enfoncé. DragDrop Se produit lors d'une opération de glisser-déplacer.

10. .Ateliers Windows Forms 6. Résultat attendu Traitement effectué Des pictogrammes de type PictureBox sont regroupés dans un Panel. Le bouton « Effacer » permet la remise à blanc de la surface de dessin. Drag & Drop Images Objectif Mise en œuvre du glisser déplacer pour des ressources de type graphique. Votre application permet de faire glisser un pictogramme dans la zone de droite afin de le dessiner.

Ateliers Windows Forms Les types de contrôle mis en œuvre sont de type Panel et PictureBox. Bitmap Spécifie un format de bitmap Windows. GetData Extrait les données associées au format de données spécifié. ellipses… 6. Timer et ProgressBar Objectif Appréhender les fonctionnalités du contrôle Timer et matérialiser l’écoulement du temps à l’aide d’un contrôle de type ProgressBar.Drawing T Graphics M Description Obtient ou définit l'image que PictureBox affiche. Résultat attendu Traitement effectué Le bouton « Go » permet de démarrer la cuisson. Il change alors de désignation et permet maintenant l’interruption de la cuisson. Les éléments à utiliser sont sensiblement les mêmes que pour le tp précédent. CreateGraphics Crée l'objet Graphics permettant de dessiner sur le contrôle concerné. Une fois la cuisson démarrée le Label et le ProgressBar indiquent à leur manière le nombre de secondes écoulées. DrawImage Dessine l'objet Image spécifié à l'emplacement indiqué avec sa taille d'origine. Eléments utiles Elément PictureBox Type Membre P Image Control M Data M DataFormats P Control M Graphics M System. PointToClient Calcule l'emplacement du point spécifié à l'écran en coordonnées client. Ce champ static est en lecture seule. rectangles. Image Classe de base abstraite qui fournit des fonctionnalités pour les classes descendantes Bitmap et Metafile. Possibilité de dessiner des lignes. Clear Efface l'intégralité de la surface de dessin et la remplit avec la couleur d'arrière-plan spécifiée. .11. La liste suivante ne mentionne que les éléments spécifiques à cet exercice. Si vous avez du temps Ajouter quelques outils.

Enabled Obtient ou définit si la minuterie est en cours d'exécution. PerformStep Fait avancer la position actuelle de la barre de progression de la quantité de la propriété Step. généralement exprimé sous la forme d'une date ou d'une heure. Stop Arrête la minuterie. Step Obtient ou définit la quantité d'augmentation de la position actuelle de la barre de progression lors d'un appel à la méthode PerformStep. entre les graduations de la minuterie. . TimeSpan Représente un intervalle de temps. Si vous avez du temps Avant de démarrer la cuisson. en millièmes de seconde. Interval Obtient ou définit l'heure. donnez la possibilité à l’utilisateur de déterminer sa durée. DateTime Représente un instant.Ateliers Windows Forms En cas d’utilisation du bouton « Stop » la fenêtre se présente comme suit : Eléments utiles Elément Type Membre ProgressBar P Maximum ProgressBar P ProgressBar P ProgressBar P ProgressBar M ProgressBar M Timer P Timer P Timer Timer System M M C System C Description Obtient ou définit la valeur maximale de la plage du contrôle. Increment Fait avancer la position actuelle de la barre de progression de la quantité spécifiée. Value Obtient ou définit la position actuelle de la barre de progression. Start Démarre la minuterie. Minimum Obtient ou définit la valeur minimale du contrôle d'entrée associé.

La liste de droite est matérialisée par un contrôle de type ListView et affiche les fichiers du dossier sélectionné. DirectoryInfo et FileInfo. nous vous conseillons vivement d’investiguez les classes suivantes : Environment. ListView et Splitter Objectif Créer une application de type explorateur de fichier permettant d’explorer un dossier spécifique de votre répertoire de travail. File. Les deux listes sont délimitées par un contrôle de type Splitter. Afin de réaliser ce tp et de mieux appréhender la gestion du système de fichiers. Path.12. Directory. Résultat attendu Traitement effectué La liste de gauche est constituée d’un contrôle TreeView affichant votre arborescence de dossiers. TreeView.Ateliers Windows Forms 6. Eléments utiles Elément Environment Environment Type Membre Description M GetFolderPath Obtient le chemin d'accès au dossier spécial du système identifié par l'énumération spécifiée. E SpecialFolder Spécifie les constantes énumérées utilisées pour extraire les chemins d'accès des dossiers spéciaux du . Ce dernier permet à l’utilisateur de répartir l’espace du formulaire réservés aux deux listes.

Si vous avez du temps Ajoutez une barre d’état à votre projet permettant d’afficher des information relatives au fichier sélectionné. déplacer et énumérer via des répertoires et sous-répertoires.IO C System. Path Exécute des opérations sur des instances String qui contiennent des informations relatives au chemin d'accès d'un fichier ou d'un répertoire. GetDirectories Obtient les noms des sous-répertoires dans le répertoire spécifié. System. Expose des méthodes static pour créer. .IO Directory C système. GetFileName Retourne le nom et l'extension de fichier de la chaîne de chemin d'accès spécifiée.IO C Directory M Directory M Path M File Fournit des méthodes static pour créer.Ateliers Windows Forms SpecialFolder P Personal System. copier. déplacer et ouvrir des fichiers et facilite la création d'objets FileStream. supprimer. Répertoire servant de référentiel commun pour les documents. GetFiles Retourne les noms des fichiers dans le répertoire spécifié.

. TabControl.13. Résultat attendu Traitement effectué Le contrôle intitulé « Civilité » proposera les 3 valeurs : Monsieur.Ateliers Windows Forms 6. RichTextBox et NotifyIcon. DomainUpDown. Madame et Mademoiselle. RichTextBox et compagnie Objectif Découverte des contrôles suivants . Le reste de la page « Détail » est une fiche de saisie des plus classiques. La barre d’état affiche en dynamique les informations concernant le contact ainsi que la date système.

mais ne sera accessible que par le biais d’une icône dans la zone de notification en bas à droite de l’écran. « Vert ». alors que « Couleur » proposera « Rouge ». « Style » donnera accès aux trois options « Gras ».Ateliers Windows Forms La page Commentaires est constituée d’un contrôle de type RichTextBox doté d’un menu contextuel. RichTextBox M LoadFile Charge le contenu d'un fichier dans le contrôle RichTextBox. « Italique ». RichTextBox P SelectionFont Obtient ou définit la police du texte de la sélection actuelle ou du point d'insertion. . RichTextBox P SelectionColor Obtient ou définit la couleur du texte de la sélection actuelle ou du point d'insertion. la fenêtre ne sera plus apparente dans la barre des tâches (sous forme de bouton). FormWindowState P Minimized Fenêtre réduite. RichTextBox M SaveFile Enregistre le contenu du contrôle RichTextBox dans un fichier. Form P WindowState Obtient ou définit l'état de la fenêtre du formulaire. « Bleu » et « Noir ». « Souligné » et « Normal ». Ces différentes options permettront d’appliquer la mise en forme correspondante au texte sélectionné. Eléments utiles Elément Form Type Membre Description P ShowInTaskbar Obtient ou définit une valeur indiquant si le formulaire est affiché dans la barre des tâches Windows. Si vous avez du temps Faites en sorte de sauvegarder les données sur disque à la fermeture de l’application et de les recharger à l’ouverture. Lors de sa réduction.