TextBox, défilement vertical automatique [Résolu]

zark92 3 Messages postés samedi 17 février 2007Date d'inscription 17 février 2007 Dernière intervention - 17 févr. 2007 à 10:25 - Dernière réponse : zark92 3 Messages postés samedi 17 février 2007Date d'inscription 17 février 2007 Dernière intervention
- 17 févr. 2007 à 13:32
Bonjour à tous,
j'utilise une TextBox comme fenêtre pour stocker le log d'activité. Je souhaiterais faire défiler automatiquement la TextBox tout en bas quand j'ajoute du text (pour que l'utilisateur voit le dernier texte ajouté).

Je n'ai pas trouvé comment mettre la main sur les scrollbars associées à la TextBox. Quelqu'un a une idée ?
Afficher la suite 

5 réponses

Répondre au sujet
Lutinore 3248 Messages postés lundi 25 avril 2005Date d'inscription 27 octobre 2012 Dernière intervention - 17 févr. 2007 à 11:02
+3
Utile
Salut,

tb = new TextBox( );
tb.Multiline = true;
tb.ScrollBars = ScrollBars.Both;
tb.Dock = DockStyle.Fill;
tb.TextChanged += delegate
{
    this.tb.Focus( );
    this.tb.Select( this.tb.Text.Length, 0 );
    this.tb.ScrollToCaret( );
};
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Lutinore
zark92 3 Messages postés samedi 17 février 2007Date d'inscription 17 février 2007 Dernière intervention - 17 févr. 2007 à 11:46
0
Utile
Merci, ça fonctionne bien. Par contre la TextBox clignote quand j'ajoute du text.

Y a-t-il un moyen pour désactiver/réactiver le rafraissement pendant l'ajout du text et le défilement du contrôle:

                // Il faudrait désactiver le refresh ici
                this.logTextBox.Text += message + "\r\n";
                this.logTextBox.Select( this.logTextBox.Text.Length, 0 );
                this.logTextBox.ScrollToCaret();
                // Il faudrait réactiver le refresh ici
Commenter la réponse de zark92
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 17 févr. 2007 à 11:57
0
Utile
Au lieu de mettre this.logTextBox.Text += message + "\r\n";
Utilise la méthode AppendText... Je ne sais pas si ça va résoudre ton problème, mais ça sera de toute façon mieux en terme de performance...

<hr />
-Blog-
Commenter la réponse de cs_Bidou
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 17 févr. 2007 à 12:30
0
Utile
Et Environment.NewLine a la place de "\r\n" ;)

Mx
MVP C# 
Commenter la réponse de MorpionMx
zark92 3 Messages postés samedi 17 février 2007Date d'inscription 17 février 2007 Dernière intervention - 17 févr. 2007 à 13:32
0
Utile
Merci pour les conseils. Ca clignote toujours mais au moins on arrive maintenant à lire le texte (l'affectation à la propriété .Text cause visiblement un effacement complet du texte avant rafraichissement).
Commenter la réponse de zark92

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.