IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

boucle infine avec DateTimePicker_valuechanged


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 112
    Points : 80
    Points
    80
    Par défaut boucle infine avec DateTimePicker_valuechanged
    Bonjour !

    J'utilise un DateTimePicker dans un de mes formulaires mais lorsque je change de date, mon application ne réponds plus !

    Il faut a chaque fois que je la relaod pour que ca fonctionne.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
     Private Sub dateTimepicker1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dtDate.ValueChanged
     
                If dateTimepicker1.Checked Then
                    Datedebut = dateTimepicker1.Value.Date
                Else
                    Datedebut = Nothing
                   dateTimepicker1.Value = DateTime.Now.Date
                End If
        End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
     Private Sub combobox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboCards.SelectedIndexChanged
     
                ' Cédule pour cette journée
                Dim xSchedule As Schedule.CScheduleDayEmp = Schedule.CScheduleDayEmp.GetObject(Me.cPunchEmpNo, Me.Datedebut)
     
                If xSchedule IsNot Nothing AndAlso xSchedule.ntotalhour <> 0 Then
     
                    'Vérification si j'ai un puch in et un punch out pour cette journée
                    If Punch.debut <> Nothing AndAlso Punch.Fin <> Nothing Then
     
                        DiffTotalHour = xSchedule.totalHeures - Punch.totalHeures 
                        txtTotalWorkCard.Text = DiffTotalHour
     
                        If DiffTotalHour <= 0 Then
                            txtTotalWorkCard.Text = ""
                        End If
                    Else
     
                        txtTotalWorkCard.Text = xSchedule.totalHeures 
                    End If
     
                End If
     
            End If
     
        End Sub

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    Salut la miss,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dateTimepicker1.Value = DateTime.Now.Date
    tu réassignes une valeur à ton datetimepicker, ce qui a pour effet de redéclencher l'evennement "dateTimepicker1_ValueChanged" dans lequel tu réassignes une valeur à ton datetimepicker, ce qui a pour effet de redéclencher l'evennement "dateTimepicker1_ValueChanged" dans lequel tu réassignes une valeur à ton datetimepicker, ce qui a pour effet de redéclencher l'evennement "dateTimepicker1_ValueChanged" dans lequel tu réassignes etc..............

    forcément ton appli tourne en boucle et ne te rend plus la main !

    va falloir trouver une autre méthode

    - soit tu dé-assignes ton événement avant le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dateTimepicker1.Value = DateTime.Now.Date
    et tu le réassignes juste après

    - soit tu te crées une variable globale de type "bool" genre "ModifManuelleEnCours = true" juste avant l'assignation et "ModifManuelleEnCours = false" juste après, et au début de l'event tu testes si "ModifManuelleEnCours = true", auquel cas tu ne fais rien
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. eviter une boucle infine avec header
    Par cgodfrin dans le forum Langage
    Réponses: 5
    Dernier message: 01/04/2011, 12h26
  2. [MooTools] boucle infine avec submit
    Par bouzakher dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 20/02/2009, 07h38
  3. [VB6] boucle for avec liste de valeur defini
    Par Morpheus2144 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 06/04/2006, 18h12
  4. [Débutant]Boucle imbriquée avec des bornes différentes
    Par Hayato dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 29/08/2005, 16h23
  5. [XSL]boucle imbriquée avec condition
    Par kor dans le forum XSL/XSLT/XPATH
    Réponses: 10
    Dernier message: 11/01/2005, 14h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo