C# textbox中鼠标光标位置始终在最后 谢谢

无论鼠标点击哪都显示在最后
2024-11-02 03:38:06
有5个网友回答
网友(1):

//获取焦点

this.textBox1.Focus();

//光标定位到文本最后

this.textBox1.Select(this.textBox1.TextLength,0);

//滚动到光标处

this.textBox1.ScrollToCaret();

C#鼠标指针的形状

  1. 控件属性定义法。

    在Windows应用程序中,通过设置控件的Cursor属性可以定义鼠标的显示形状,控件(如Button控件)的Cursor属性用于设置鼠标指针的类型,默认为Default。

  2. 代码定义法。

在想要定义鼠标指针的地方写代码, Cursor = Cursors.Default;   

网友(2):

就是这个属性:TextBox.SelectionStart获取或设置文本框中选定的文本起始点。如果控件中没有选择任何文本,则该属性指示新文本的插入点。如果将此属性设置为超出了控件中文本长度的位置的值,则选定文本的起始位置将放在最后一个字符之后。如果在文本框控件中选择了文本,则更改此属性可能会减小 SelectionLength 属性的值。如果控件中在 SelectionStart 属性所指示的位置之后的剩余文本小于 SelectionLength 属性的值,则 SelectionLength 属性的值会自动减小。SelectionStart 属性的值从不会导致 SelectionLength 属性增加。 在TextBox控件的TextChanged事件里写代码:TextBox1.SelectStart = Textbox1.Text.Length;

网友(3):

private void textBox1_Click(object sender, EventArgs e)
{
textBox1.SelectionStart = textBox1.Text.Length;
}
另外如果想按键盘左右键也保持光标在最后,还要加上keyup事件
private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
textBox1.SelectionStart = textBox1.Text.Length;
}

网友(4):

设置鼠标点击事件,事件中:
textbox.SelectionStart = textbox.Text.Length;

textbox.SelectionStart :设置文本框中文本的起始点

网友(5):

楼上的都对
不过需要补充一点,需要在控件中加
autopostback="true"也就是onclick事件的那个控件