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;
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封装的浏览器触摸获得焦点,有光标。无法输入中文。鼠标点击后正常。求解答谢谢!