Tester Checkbox en boucle en VB. Net

Résolu
Artemis Rappetout -  
Artemis.Rappetout Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de faire un programme, avec plusieurs TextBox à remplir, par contre, selon ce que j'ai a faire ou ce que j'ai déjà fait, je n'ai pas besoin de toutes mes TextBox, j'ai donc mis une Checkbox afin de préciser à mon programme que si cette CheckBox et cocher, il me grise certaines TextBox.

Donc tout va bien, quand je coche ma CheckBox, mes TextBox ce grise, par contre, si je décoche, rien ne ce passe, mes TextBox reste grisé ...

Y a t'il un moyen de lancer un test sur ma CheckBox tout le temps que mon programme est exécuté afin de résoudre ce soucis ?

Le programme est en VB. Net et je programme avec Visual Studio 2013.

3 réponses

  1. MrYAU31 Messages postés 4631 Statut Membre 1 630
     
    Bonjour,
    Tu as juste à faire un truc comme :
    Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
    If CheckBox1.Checked Then
    TextBox1.Enable = True
    Else
    TextBox1.Enable = False
    End If
    End Sub
    1
  2. Utilisateur anonyme
     
    Bonsoir, il ne faut pas faire de boucle mais te servir de l'événement
    checkedchanged et de la valeur Checked.

    Dans cet exemple, j'ai mis dans le tag de chque chekbox la textbox correspondante
            CheckBox1.Tag = TextBox1
            CheckBox2.Tag = TextBox2
            CheckBox3.Tag = TextBox3


    et j'ai associé une méthode à l'événement de mes trois checkbox
        Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox3.CheckedChanged, CheckBox2.CheckedChanged, CheckBox1.CheckedChanged
            Dim check As CheckBox = CType(sender, CheckBox)
            Dim textB As TextBox = CType(check.Tag, TextBox)
    
            textB.Enabled = check.Checked
        End Sub

    1
  3. Artemis.Rappetout Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
     
    C'est parfait, je vous remercie pour votre rapidité de réponse :)
    0