2013-03-23 65 views
0

我有一個滾動條(垂直啓用)的文本框。當我寫入texbox並且我的文本不能顯示在文本框中時,它會啓動滾動條功能(這是滾動條的目的),但它不會跟隨我。Ibeam不會顯示,我應該手動滾動對它來說,這是一件不太容易的事情。我能做些什麼來解決這個問題?有沒有內置的功能來解決這個問題?
這是如何跟隨在滾動條中插入的文本框

 resources.ApplyResources(this.textBox1, "textBox1"); 
     this.tableLayoutPanel1.SetColumnSpan(this.textBox1, 5); 
     this.textBox1.Cursor = System.Windows.Forms.Cursors.IBeam; 
     this.textBox1.HideSelection = false; 
     this.textBox1.Name = "textBox1"; 
     this.textBox1.ReadOnly = true; 

回答

1

可以使用ScrollToCaret方法。將一個TextChanged事件處理程序附加到文本框,以便每當文本更改並滾動到插入符的位置時調用它。

//attach handler 
textBox1.TextChanged += new EventHandler(textBox1_TextChanged); 

private void textBox1_TextChanged(object sender, EventArgs e) 
{ 
    //move the caret to the end to ensure it scrolls right to the bottom 
    textBox1.SelectionStart = textBox1.Text.Length; 

    //scroll to the caret 
    textBox1.ScrollToCaret(); 
} 
0

在keydown事件使用

this.textBox1.Select(this.textBox1.Text.Length-1, 0)