C#-WinForm-如何获取文本框(TextBox)中鼠标,光标位置

Posted 野性狼心

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#-WinForm-如何获取文本框(TextBox)中鼠标,光标位置相关的知识,希望对你有一定的参考价值。

文本框(TextBox)中的鼠标位置和光标位置是两个不同的概念,鼠标位置是要点击鼠标后(NouseDown)获取到,而光标位置却是实时就要获取到,也就是用户输入一个字符(KeyUp),这个位置就要改变一次,不需要鼠标的任何操作的。

下面代码能同时获取鼠标和光标位置,这里的“位置”指的是在字符串中的第几个。 

需要在窗体上加上一个文本框(textBox1),还要绑定textBox1_KeyUp和textBox1_MouseDown事件。

要想实现鼠标点击或按键后光标位置获取,可用时使用下列代码

一、按下按键后位置-只要通过按键光标位置改变(鼠标点击光标改变,label2.text不改变):

private void textBox1_KeyUp(object sender, KeyEventArgs e)  
       {  
           label2.Text = textBox1.SelectionStart.ToString();  
       }  

二、按下鼠标后位置-只要通过按下鼠标光标位置改变(通过按键光标改变,label2.text不改变):

private void textBox1_MouseDown(object sender, MouseEventArgs e)  
       {  
           label2.Text = textBox1.SelectionStart.ToString();  
       }  

 

以上是关于C#-WinForm-如何获取文本框(TextBox)中鼠标,光标位置的主要内容,如果未能解决你的问题,请参考以下文章

winform 程序 如何实现输入文本框 出现下拉数据提示(数据库读取)

Windows Store App XAML - 如何获取导航页面的文本框值

一个文本框点回车焦点移到下一个文本框?C#winform的

C#DataGrid如何绑定其中一列为下拉框?并且获取值

C#winform程序中,将A窗体datagridview中选中的数据传到B窗体里面的各个文本框中进行修改

C#Winform中怎么设置文本框的文本不能被选中,就像QQ登录框那样 不给复制的