begin process at 2012 02 12 11:54:43
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Control

 > CHANGER LES PROPRIÉTÉS DE TOUS LES CONTRÔLES D'UNE FENÊTRE

CHANGER LES PROPRIÉTÉS DE TOUS LES CONTRÔLES D'UNE FENÊTRE


 Information sur la source

Note :
6,4 / 10 - par 5 personnes
6,40 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Control Source .NET ( DotNet ) Niveau :Débutant Date de création :27/10/2004 Date de mise à jour :27/10/2004 11:55:19 Vu :7 278

Auteur : yoda

Ecrire un message privé
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Mon code permet de modifier les propriétés de tous les contrôles d'une fenêtre. Ce qui permet par exemple de modifier les couleurs de tous les boutons d'une fenêtre en une seule fois. Dans le code je montre comment modifier une propriété qui gère la forme des contrôles mais j'ai ajouté en commentaire le code qui permet de modifier la couleur de chaque contrôle. Sinon le code est commenté.

Source

  • ' Dans la première boucle vous pouvez ajouter
  • ' le code suivant, il permet de voir le
  • ' contenu
  • ' de la variable j (Ajouter une listBox
  • ' dans la fenêtre) : listBox1.Items.Add
  • ' (j.current)
  • Dim j As System.Collections.IEnumerator
  • j = Controls.GetEnumerator
  • While j.MoveNext
  • If TypeOf j.Current Is GroupBox Then
  • ' Pour accéder aux objets contenus
  • ' dans un groupBox, il faut
  • ' passer par sa propre collection
  • ' de contrôle
  • ' cf *
  • CType(j.Current, GroupBox).FlatStyle _
  • = FlatStyle.Standard
  • CType(j.Current, GroupBox).Refresh()
  • Dim i As System.Collections.IEnumerator
  • i = j.Current.Controls.GetEnumerator
  • While i.MoveNext
  • If TypeOf i.Current Is Button Then
  • ' cf *
  • CType(i.Current, Button).FlatStyle _
  • = FlatStyle.Standard
  • CType(i.Current, Button).Refresh()
  • End If
  • End While
  • End If
  • If TypeOf j.Current Is Button Then
  • ' *
  • ' C'est à ce niveau que l'on accède aux propriétés
  • ' de l'objet que l'on veut modifier.
  • ' Exemple supplémentaire :
  • ' CType(i.Current, Button).BackColor = color.Blue
  • ' Vous l'aurez évidemment remarqué
  • ' que ce code permet,
  • ' en quelque ligne, de modifier la couleur
  • ' de tous les boutons
  • ' de la fenêtre.
  • CType(j.Current, Button).FlatStyle _
  • = FlatStyle.Standard
  • End If
  • If TypeOf j.Current Is RadioButton Then
  • ' cf *
  • CType(j.Current, RadioButton).FlatStyle _
  • = FlatStyle.Standard
  • End If
  • If TypeOf j.Current Is CheckBox Then
  • ' cf *
  • CType(j.Current, CheckBox).FlatStyle _
  • = FlatStyle.Standard
  • End If
  • End While
' Dans la première boucle vous pouvez ajouter 
' le code suivant, il permet de voir le 
' contenu
' de la variable j (Ajouter une listBox 
' dans la fenêtre) : listBox1.Items.Add
' (j.current)
Dim j As System.Collections.IEnumerator
j = Controls.GetEnumerator
While j.MoveNext
     If TypeOf j.Current Is GroupBox Then
          ' Pour accéder aux objets contenus 
          ' dans un groupBox, il faut
          ' passer par sa propre collection 
          ' de contrôle 
          ' cf *
          CType(j.Current, GroupBox).FlatStyle _
          = FlatStyle.Standard
          CType(j.Current, GroupBox).Refresh()
          Dim i As System.Collections.IEnumerator
          i = j.Current.Controls.GetEnumerator
          While i.MoveNext
              If TypeOf i.Current Is Button Then
                 ' cf *
                  CType(i.Current, Button).FlatStyle _ 
                  = FlatStyle.Standard
                  CType(i.Current, Button).Refresh()
              End If
          End While
     End If
     If TypeOf j.Current Is Button Then
         ' *
         ' C'est à ce niveau que l'on accède aux propriétés 
         ' de l'objet que l'on veut modifier.
         ' Exemple supplémentaire : 
         ' CType(i.Current, Button).BackColor  = color.Blue
         ' Vous l'aurez évidemment remarqué 
         ' que ce code permet, 
         ' en quelque ligne, de modifier la couleur 
         ' de tous les boutons
         ' de la fenêtre.
         CType(j.Current, Button).FlatStyle _
         = FlatStyle.Standard
     End If
     If TypeOf j.Current Is RadioButton Then
          ' cf *
          CType(j.Current, RadioButton).FlatStyle _ 
          = FlatStyle.Standard
     End If
     If TypeOf j.Current Is CheckBox Then
          ' cf *
          CType(j.Current, CheckBox).FlatStyle _ 
          = FlatStyle.Standard
     End If
End While

 Conclusion

Si vous avez besoin d'explications, posez vos questions ici....


 Historique

27 octobre 2004 11:12:40 :
Mise à jour : 1- J'ai simplement déplacé mon texte pour qu'il passe mieux à l'affichage
27 octobre 2004 11:15:05 :
Mise à jour : 1- J'ai simplement modifié mon texte pour qu'il apparaisse mieux à l'écran
27 octobre 2004 11:19:24 :
Mise à jour : 1- J'ai simplement modifié la position de mon texte pour qu'il apparaisse correctement à l'écran.
27 octobre 2004 11:55:19 :
J'ai changé la catégorie de ma source. Avant : Trucs et Astuces Maintenant : Control

 Sources de la même categorie

Source avec Zip COMMUNICATION MODBUS MASTER par sergelapointe
Source avec Zip Source avec une capture DÉPLACEMENT AVEC FLÈCHES DANS UN PAVÉ DE TEXTBOX 9X9 DYNAMIQ... par EhJoe
Source avec Zip Source avec une capture Source .NET (Dotnet) CONTROLSTARS EN RÉPONSE À JAKNIGHT007 par bigboss9
Source avec Zip Source avec une capture Source .NET (Dotnet) CALENDRIER ANNUEL NORME ISO par Prog1001
Source avec Zip Source avec une capture Source .NET (Dotnet) CONTROLE STARS par jaknight007

Commentaires et avis

Commentaire de jmenfous le 27/10/2004 13:50:48

Petite info: Tu n'as pas vu la source de TheEwook
http://www.vbfrance.com/code.aspx?id=25537

c'est pas trop loint de ton code et tt les controls contenus par d'autres controls sont geres.

Commentaire de yoda le 27/10/2004 15:52:24

Désolé je n'avais pas vu. Je laisse quand même ma source puisque nous n'avons pas exactement la même technique. Je rappelle qu'avec quelques lignes en plus ce code peut gérer tous les contrôles d'une winForm sachant qu'il n'y a que quelques composants qui ont une propriété FlatStyle.
Merci bien évidemment pour ce commentaire constructif pour tout le monde.

Commentaire de jmenfous le 27/10/2004 16:03:59

Pourquoi etre desole?

Ton code est propre et l'utilisation du 'TypeOf' est bien plus judicieuse. Non non et encore non tu n'as pas a etre desole ;-)

De plus pour gerer tt les control tu n'as pas besoin de quelques lignes... un seule bien placee et ca tourne. ;-)

Moi j'aime bien ta source c'est pour cela que j'ai mis une note! Perso quand j'aime pas... je ne note pas.

Commentaire de yoda le 27/10/2004 20:21:18

Merci bonne esprit c'est tellement rare de nos jours...
Je suis en train d'ajouter une vrai gestion du style XP avec prise en compte de l'OS et même une prise en compte en live lorsque l'on change le style depuis la fenêtre de propriété du bureau... Alors reste à l'écoute. Sinon si tu as des sources sur le site je veux bien les voir parce ton exemple pour le code de TheEwook n'est pas bête du tout, je n'y avais pas pensé...

Commentaire de franz le 28/10/2004 16:08:39

Bravo et merci, maître Yoda.

Commentaire de mdabin le 10/05/2007 16:18:09

Comment faire si on veut modifier les memes proprietes d'un groupe d'objets et non de tous les objets? (C'est à dire sans modifier un par un les propriété de chaque objet ) Peut on indicer les objets comme cela etait possible sous VB6?(Visiblement non; Exemple: Label(i).visible=False )
Merci

Commentaire de jmenfous le 10/05/2007 16:51:10

Pour le moment non, mais quand Linq serra disponible via le framework 3.5 ça devrait être possible.

... enfin je pondère un peu ma réponse... on en dispose pas encore d'une ligne miracle qui fait tout, mais tu peux utiliser la réflexion pour déterminer si un control a la propriété que tu veux modifier sans pour autant coder explicitement la liste de tout les types de controls qui ont cette propriété.

@+ en espérant que ça t'aidera

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,045 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales