c# textbox 让滚动条始终在最下面

tbContent.SelectionStart = tbContent.TextLength;
tbContent.SelectionLength = 0;
tbContent.ScrollToCaret();

tbContent.Focus();
tbContent.Select(tbContent.Text.Length, 0);
tbContent.ScrollToCaret();

上面两种方法都试过了,还是不行。是不是textbox的其他属性设错了。。。请各位大侠帮解。。。
this.tbContent.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbContent.Cursor = System.Windows.Forms.Cursors.Default;
this.tbContent.Location = new System.Drawing.Point(366, 20);
this.tbContent.Multiline = true;
this.tbContent.Name = "tbContent";
this.tbContent.ReadOnly = true;
this.tbContent.ScrollBars = System.Windows.Forms.ScrollBars.Both;
this.tbContent.Size = new System.Drawing.Size(279, 486);
this.tbContent.TabIndex = 4;
2楼说的方法我试过了,不行啊。。。

第1个回答  2010-12-02
如果你想实现这种效果,你在向tbContent中添加文本时必须用tbContent.AppendText("文本");这个函数时,tbContent.ScrollToCaret(); 这个函数才会起作用;给你一段代码你试试就知道了:
private void textBox5_TextChanged(object sender, EventArgs e)
{
textBox5.ScrollToCaret();
}

private void button8_Click(object sender, EventArgs e)
{
textBox5.AppendText("skjfhskdfhs");
textBox5.Focus();
}本回答被提问者采纳
第2个回答  2010-12-02
改成这个样子

//把光标(文本其实点)移动到文件框中,文本的末尾处
this.textBox1.SelectionStart = this.textBox1.TextLength;
//然后滚动到光标所在的位置
this.textBox1.ScrollToCaret();

本来在文本框中输入都有自动滚动的效果,所以你最好自己建个按钮来调试一下这2句代码,肯定没问题的 加油吧!

private void button1_Click(object sender, EventArgs e)
{

this.textBox1.SelectionStart = this.textBox1.TextLength;
this.textBox1.ScrollToCaret();
}

整个的代码 不可能不行, 你自己添加一个按钮来测试 加个按钮点击事件
第3个回答  2010-12-02
textbox控件有这个功能吗?
第4个回答  2010-12-02
把你的tbContent的属性拷出来

C# 如何让TextBox的滚动条自动处于最下部
注意:这两种这两种事件的区别,你自己操作一遍体验一下,推荐使用第一种事件,既textBox1_MouseClick(),当单击鼠标左键,滚动条自动处于TextBox最下部。另外还有一个容易出错的地方,不要在窗体加载时使用,因为窗体加载时还没有这个控件,所以代码将不会被执行!private void textBox1_MouseClick(object...

C#如何设置textbox的滚动条一直在最下面?
一种方法,光标定位:把以下代码复制到HTML文件运行即可\/\/ 页面加载事件function document.onreadystatechange(){\/\/当加载完成 if(document.readyState=="complete"){ \/\/文本框 var textbox = document.all("txtTest")var r = textbox.createTextRange();r.collapse(true);r.moveStart('characte...

如何将C#中的textbox的滚动条移动到最后一行
在C#中,给textbox添加文本后,都希望给用户将最新的内容显示出来,自然会希望textbo自动滚动到最后一行,这样大家都能注意到最新的信息。但是如果使用txtbox.Text+=stringtmp;的方式,则不能将光标和滚动条移动到最后一行,需要使用Append命令添加的字符串,才能使textbox移动到最后一行。

C#中,如何让richTextBox旁边的滚动条始终处于最下方
\/\/设置光标的位置到文本尾 this.richTextBox.Select(this.richTextBox.TextLength,0);\/\/滚动到控件光标处 this.richTextBox.ScrollToCaret();

c#dgv刷新后怎样让滚动条保持在最下方
添加richtextBox的TexChange事件。并在在richTextBox_TextChanged事件中加入代码:richTextBox1.ScrollToCaret();就ok了。以上方法有弊端,有时候显示会造成,有半行数据时,滚动条未滚动最底。

C# textbox中鼠标光标位置始终在最后 谢谢
this.textBox1.Focus();\/\/光标定位到文本最后 this.textBox1.Select(this.textBox1.TextLength,0);\/\/滚动到光标处 this.textBox1.ScrollToCaret();C#鼠标指针的形状 控件属性定义法。在Windows应用程序中,通过设置控件的Cursor属性可以定义鼠标的显示形状,控件(如Button控件)的Cursor属性用于设置鼠标...

C#中怎样让richTextBox控件的滚动条跟随数据向下移动!
在添加数据以后执行 this.richTextBox1.SelectionStart = this.richTextBox1.TextLength;this.richTextBox1.ScrollToCaret();

C# 如何设置滚动条位置?
可以利用Select方法来移动光标位置,然后使用ScrollToCaret方法来将文本框滚动到当前光标所在的位置:textBox1.Select(textBox1.Text.Length , 0); \/\/将光标移动到文档结尾处 textBox1.ScrollToCaret(); \/\/将文本框滚动到光标的位置

C# 窗体编程 Windows编程 加在一大段文字进textBox后,textBox没有滚动...
\/\/设置文本框的ScrollBars 属性即可this.textBox1.ScrollBars = ScrollBars.Vertical;\/\/垂直滚动条\/\/ScrollBars有四个值,分别设置水平滚动条、垂直滚动条、水平滚动条和垂直滚动条、没有滚动条。

C#:隐藏与显示textbox的滚动条
textbox一般情况下的滚动条设置都是None啊,textBox1.ScrollBars = ScrollBars.Horizontal;你这里可以参考这个属性的几个值,默认提供的只有4中None,both(成对有或者没有)Horizontal(只显示横滚动条)Vertical(只显示综滚动条)如果这个不能实现你想要的功能,你可以先设置为None在textchanged事件中判断text.length,如果超...

相似回答