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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# textbox中鼠标光标位置始终在最后 谢谢相关的知识,希望对你有一定的参考价值。

无论鼠标点击哪都显示在最后

//获取焦点

this.textBox1.Focus();

//光标定位到文本最后

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

//滚动到光标处

this.textBox1.ScrollToCaret();

C#鼠标指针的形状

    控件属性定义法。

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

    代码定义法。

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

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

textbox.SelectionStart :设置文本框中文本的起始点
参考技术D 楼上的都对
不过需要补充一点,需要在控件中加
autopostback="true"也就是onclick事件的那个控件

C# CefSharp封装的浏览器触摸获得焦点,有光标。无法输入中文。鼠标点击后正常。求解答谢谢!

CefSharp封装的浏览器,比如百度搜索框用触摸屏,触摸点击是有光标。但软键盘无法输入中文。用鼠标点击后输入框正常。求大神解答谢谢! 系统WIN7X64 CefSharpV81.3.100版本。

github上有问题的描述

解决方法:

// browser是窗口上的浏览器控件

browser.PreviewTextInput += (o, e) =>   

 foreach (var character in e.Text)
           // 把每个字符向浏览器组件发送一遍
       browser.GetBrowser().GetHost().SendKeyEvent((int)WM.CHAR, (int)character, 0);
   

    // 不让cef自己处理
   e.Handled = true; 

;



没测试过,你最好自己测试下,题外话,其实用electron来开发不会更香吗?

追问

谢谢 小白初用cefsharp哈哈不懂不过最后用另一种方法修复了。触摸屏上窗口加载了但是browser没激活。用触摸去点也是不行。但是发现用鼠标点一下browser就好了。最后就模拟了下鼠标点击在browser上。感谢回复!

参考技术A 最后答主模拟了下鼠标点击在browser,这个怎么做的,我也是CefSharp在触屏机无法输入的问题,我是插了个真鼠标点下才可以

以上是关于C# textbox中鼠标光标位置始终在最后 谢谢的主要内容,如果未能解决你的问题,请参考以下文章

C# CefSharp封装的浏览器触摸获得焦点,有光标。无法输入中文。鼠标点击后正常。求解答谢谢!

如何在 C# 中的控制台应用程序中设置鼠标光标的位置?

如何在 Windows 窗体 C# 中伪造鼠标光标位置?

c# 动态获取当前屏幕中光标所在位置

C#如何实现在同属于一个groupBox下面的上一个textbox中输入回车键后,光标自动移至下一个textbox中?

计算在鼠标光标位置放大的视图偏移