J'écris dans l'environnement VS, un programme en CSharp qui effectue un traitement sur des fichiers et qui écrit l'avancement du traitement dans une textBox.
Exemple de sortie dans la textbox:
Début de traitement.
.....................
.....................
Nombre de fichiers à traiter : 532.
Fin de traitement.
Je voudrais ajouter entre les 2 dernières lignes la ligne suivante:
Nombre de fichiers traités: xxx où xxx est un compteur qui s'incrémente chaque fois qu'un fichier est traité.
Je n'ai pas trouvé, dans un contrôle textBox, la possibilité d'écrire la valeur xxx sans réécrire tout le texte. Est-ce possible ou un autre contrôle permet-il de le faire?
Salut,
Avec le TextBox tu n'as le choix. Moi je ferais comme ça.
A chaque itération de ta boucle de traitement:
TextBox.Text = string.Format("Début de traitement.\n.....................\n.....................\nNombre de fichiers à traiter : {0}.Nombre de fichiers traités: {1}\nFin de traitement.",i,j)
avec i compteur de boucle
avec j le nombre total de fichiers
A+
Il peut y avoir une vingtaine de lignes avant le compteur. Ta solution ne m'arrange pas trop, car elle redessine tout l'écran à chaque fois que la propriété Text est positionnée.
En tout cas, merci de ta réponse.
A+.
Bonjour,
Avec le texte box, ce n'est pas possible...
L'idée (éventuellement) serait de cacher un Control +/- invisible par dessus et de mettre à jour que celui-ci. Je ne sais pas exactement dans quelle mesure c'est possible (jamais essayé) et surtout je ne pense pas que ce soit très utile... Finalement, réafficher quelques lignes c'est pas grand chose.
Tu n'as qu'a utiliser, au lieu d'un textbox, plusieurs labels (ou une table avec plusieurs lignes) dans ta premiere ligne tu mets :
Début de traitement.
.....................
.....................
Nombre de fichiers à traiter : 532.
Dans ta deuxieme ligne tu mets juste ton compteur comme ca tu n'aura pas a remettre tout ton code.
Salut Cédric,
Je viens juste de rentrer après plusieurs jours d'absence. Je n'avais donc pas encore lu ton message.
Je vais voir si tes conseils peuvent s'appliquer à mon cas.
Merci pour ta réponse.