alors j'ai eu ce morceau de code. (currPosX est défini plus tôt)Les graphiques ne dessinent pas lorsque la condition de boucle est dates. C#, winForms
while (earliestDate < DateTime.Today)
{
currPosX = currPosX + 5;
e.Graphics.DrawLine(Pens.Black, currPosX, 0, currPosX, 10);
earliestDate = earliestDate.AddDays(1);
}
les graphiques ne dessinent pas. C'est vraiment bizarre, car cela n'arrive que lorsque l'instruction condition est une comparaison de date. J'ai débogué, et ça va dans la boucle, et les valeurs sont corrompues (currPosX par exemple). Mais, pas d'affichage. Encore une bizarrerie, si j'ajoute un MessageBox.Show ("blabla") dans la boucle, la boîte de message apparaît, et les graphiques sont dessinés. que se passe t-il ici?
EDIT: juste pour vous rappeler les gars, quand il est une condition de non-datetime, cela fonctionne. ce qui signifie que ce code fonctionne. il affiche une série de lignes
int i = 0;
while(i < 10)
{
currPosX = currPosX + 5;
e.Graphics.DrawLine(Pens.Black, currPosX, 0, currPosX, 10);
i++;
}
oui, zone visible. oui, dans l'événement Paint. invalider ou rafraîchir ne fonctionne pas, rien ne se passe. Je ne sais pas ce qu'est le fil de l'interface utilisateur. Je ne sais pas quel est le style de contrôle. vérifier ma modification – jello
J'ai mis à jour ma réponse en réponse à vos modifications. – Josh
J'ai utilisé votre solution n ° 1, et cela fonctionne. Merci – jello