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;
4

2 回答 2

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();
}
于 2013-03-23T02:02:52.670 回答
0

关于 keydown 事件使用

this.textBox1.Select(this.textBox1.Text.Length-1, 0)
于 2013-03-23T02:00:31.983 回答