在CSS中,我们可以使用::selection
伪标签编辑文本选择的颜色。是否有可能仅为一个控件覆盖选择的默认背景颜色,例如一个RichTextBox?我知道,没有办法通过CSS之类的东西来改变默认行为,但至少可以为此控件覆盖它。
我已经用Google搜索了大约一个小时,但我只找到了语法突出显示的片段。我希望文字是例如黄色而不是典型的Windows蓝色。
修改
喜欢这个小提琴:http://jsfiddle.net/W99Gt/
答案 0 :(得分:2)
在WPF中,您可以按如下方式完成此操作:
myRichTextBox.SelectionBrush = System.Windows.Media.Brushes.Yellow; // WPF
myRichTextBox.IsInactiveSelectionHighlightEnabled = true;
不幸的是,Windows窗体中无法实现所需的行为(详情here)。解决方法是通过ElementHost在Windows窗体中使用WPF RichTextBox。
<强>参考文献:强>
TextBoxBase.SelectionBrush Property(WPF)
TextBoxBase.IsInactiveSelectionHighlightEnabled Property(WPF)
编辑:删除了WinForms解决方案,因为SelectionBackColor
无法提供所需的行为。
答案 1 :(得分:1)
有一个属性RichTextBox.SelectionColor
可以完成这项工作。引用MSDN
一种颜色,表示要应用于当前文本的颜色 选择