TextBox Multilinea

01/11/2005 - 15:58 por Juan Martinez | Informe spam
Tengo un TextBox en un aplicacion, el cual es parte de una linea de
comandos y ahi voy escribendo las acciones que se han realizado, pero
cuando voy agregando mas texto y aparece el scrollbar vertical este
siempre se queda en la parte superior o sea en la primera linea y las
nuevas acciones que se realizan no se visualizan en el TextBox, este es
el codigo que utilizo:

public void AgregaHistoriaPrincipal(string sMensaje, int iValor, string
sMensaje2)
{
if(iValor > 0)
tBHistoria.Text = tBHistoria.Text + sMensaje + iValor.ToString() +
sMensaje2;
else
tBHistoria.Text = tBHistoria.Text + sMensaje + sMensaje2;

tBHistoria.Text = tBHistoria.Text + '\u000D' + '\u000A';

tBHistoria.SelectionStart = tBHistoria.Text.Length;
tBHistoria.SelectionLength = 0;
}

Alguien sabe como puedo evitar que el scroll se quede en la primera
linea y que siempre vaya al final para que se visualizen los ultimos
comandos que se hayan ejecutado???

*** Sent via Developersdex http://www.developersdex.com ***
 

Leer las respuestas

#1 Octavio Hernandez
01/11/2005 - 20:50 | Informe spam
Juan,

Te falta una llamada a ScrollToCaret():

tbHistoria.Text += "otra línea" + System.Environment.NewLine;
tbHistoria.SelectionStart = tbHistoria.Text.Length;
tbHistoria.ScrollToCaret(); // hace scroll para que se vea la pos. actual

Slds - Octavio

"Juan Martinez" escribió en el mensaje
news:
Tengo un TextBox en un aplicacion, el cual es parte de una linea de
comandos y ahi voy escribendo las acciones que se han realizado, pero
cuando voy agregando mas texto y aparece el scrollbar vertical este
siempre se queda en la parte superior o sea en la primera linea y las
nuevas acciones que se realizan no se visualizan en el TextBox, este es
el codigo que utilizo:

public void AgregaHistoriaPrincipal(string sMensaje, int iValor, string
sMensaje2)
{
if(iValor > 0)
tBHistoria.Text = tBHistoria.Text + sMensaje + iValor.ToString() +
sMensaje2;
else
tBHistoria.Text = tBHistoria.Text + sMensaje + sMensaje2;

tBHistoria.Text = tBHistoria.Text + '\u000D' + '\u000A';

tBHistoria.SelectionStart = tBHistoria.Text.Length;
tBHistoria.SelectionLength = 0;
}

Alguien sabe como puedo evitar que el scroll se quede en la primera
linea y que siempre vaya al final para que se visualizen los ultimos
comandos que se hayan ejecutado???

*** Sent via Developersdex http://www.developersdex.com ***

Preguntas similares