WPF之RichTextBox丢失光标仍然选中文本
描述:开发中完成了一个类似于Word的悬浮工具栏功能,选中文本之后可以自动弹出一个工具栏。可以修改字体、字体大小等功能,问题来了,我发现当去进行操作的时候原本选中的RichTextBox的内容的颜色会变为白色,其实仍然是选中状态,可是颜色消失了。查找了大量资料都认为是LostFocus搞的鬼,经过多次试验得出一个结论,那就是重写下LostFocus的事件。
开工:上文中提到认为是LostFocus搞的鬼,RichTextBox有两个LostFocus,OnLostFocus和OnLostKeyboardFocus,两者的区别是前者为鼠标的焦点,后者为键盘的焦点。但是在测试中发现只会进入后者,而不会进入前者,所以还是比较诧异的,诧异归诧异,我们继续。
上代码:
protected override void OnLostKeyboardFocus(KeyboardFocusChangedEventArgs e)
{
e.Handled = true;
}
好吧,只有这么多代码,就是截获了OnLostKeyboardFocus事件即可,但是这样会有一个不太友好的结果就是选中色的丢失事件木有了。我会告诉你,点击下RichTextBox的内部即可消失吗,哈哈,美中不足就是点击其他的焦点不能消失,大家斟酌吧。
WPF之RichTextBox丢失光标仍然选中文本的更多相关文章
- WPF 利用RichTextBox 打印出不同颜色的文本
using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows ...
- WPF RichTextBox 当前光标后一个字符是文档的第几个字符
WPF RichTextBox 当前光标后一个字符是文档的第几个字符 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-05 参考: TextP ...
- 【WPF学习】第二十二章 文本控件
WPF提供了三个用于输入文本的控件:TextBox.RichTextBox和PasswordBox.PasswordBox控件直接继承自Control类.TextBox和RichTextBox控件间接 ...
- 可编辑div,将光标定位到文本之后
类似qq回复一样,某人评论之后,在对评论进行回复之后,将光标定位到文本之后: function set_focus() { el=document.getElementById('guestbook_ ...
- TextBox光标定位到文本末尾
private void RichTextBox1_TextChanged(object sender, EventArgs e) { this.richTextBox1.Select(richTex ...
- css禁止用户选中文本(转)
body{ -moz-user-select:none;/*火狐*/ -webkit-user-select:none;/*webkit浏览器*/ -ms-user-select:none;/*IE1 ...
- HTML中解决双击会选中文本的问题
HTML中解决双击会选中文本的问题 <div unselectable="on" style="-moz-user-select:none;" onsel ...
- 在Word中直接用快捷键查找选中文本
在word中选中文本后按Ctrl+F,有些时候选中文本会自动出现在“查找内容”文本框中,而有些时候显示的还是上次选中的文本.这是因为只有当Word认为选中的文本是一个“词”时,选中文本才会自动出现在“ ...
- input和textarea标签的select()方法----选中文本框中的所有文本
JavaScript select()方法选中文本框中的所有文本 <input>和<textarea>两种文本框都支持select()方法,这个方法用于选择文本框中的所有文本 ...
随机推荐
- "渴了么"用户场景分析
典型用户 (1)名字:王美丽 (2)年龄:21 (3)收入:勤工助学和兼职等 (4)代表的用户在市场上的比例和重要性(比例大不等同于重要性高,如付费的用户比例较少,但是影响大,所以更重要). 作为大学 ...
- 项目结队开发---NABC分析(成员)
一.简介 项目名称:校园导航 特点:手机app,简便易用,适合对铁大地形不了解.路痴者使用. 二.NABC分析 N(need):对于新生报到,学生家长参观校园等想要了解校园路线者,本app软件将带给你 ...
- 一、javaSE总结
1.变量与常量区别: 常量:是在程序中的不会变化的数据. 变量:其实就是内存中的一个存储空间,用于储存常量数据 ,方便运算,因为有些数据不确定,变量空间可以重复使用. 2.变量空间的开辟条件:数据类型 ...
- 一个关于ExtJS4具体控件的详细教程
发现一遍介绍ExtJS控件介绍的比较好的系列文章,在此做总结 ExtJs4 笔记(1) ExtJs大比拼JQuery:Dom文档操作 ExtJs4 笔记(2) ExtJs对js基本语法扩展支持 Ext ...
- 4-Highcharts 3D图之3D普通饼图
<!DOCTYPE> <html lang='en'> <head> <title>4-Highcharts 3D图之3D普通饼图</title& ...
- Data manipulation primitives in R and Python
Data manipulation primitives in R and Python Both R and Python are incredibly good tools to manipula ...
- Topcoder SRM 630div 2
A:不断的消除两个相邻的相等字符,简单题. 真心不习惯STL.. #include<iostream> #include <string> #include <vecto ...
- HDOJ 2181 哈密顿绕行世界问题
哈密顿绕行世界问题 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- oracle OVER(PARTITION BY) 函数
OVER(PARTITION BY)函数介绍 开窗函数 Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个组返 ...
- AssetBundle依赖关系
原地址:http://www.cnblogs.com/realtimepixels/p/3652086.html Unity AssetBundle Dependencies In the last ...