UWP中设置RichEditBox的SelectionHighlightColor透明度为何无效?
解决RichEditBox选中高亮色透明度设置无效的问题
直接修改SelectionHighlightColor.Opacity不会生效,因为SolidColorBrush是不可变对象,修改属性无法触发UI更新,必须重新创建带透明度的画笔实例。
正确实现方式:
- 基于原有高亮色调整透明度:
var originalColor = this.editor.SelectionHighlightColor.Color; // 0.1透明度对应Alpha值为25(0.1*255≈25) this.editor.SelectionHighlightColor = new SolidColorBrush(Color.FromArgb(25, originalColor.R, originalColor.G, originalColor.B));
- 直接指定自定义半透明颜色:
// 第一个参数是Alpha值(0-255,0全透明,255不透明),后三位是RGB颜色值 this.editor.SelectionHighlightColor = new SolidColorBrush(Color.FromArgb(25, 0, 120, 215));
内容的提问来源于stack exchange,提问作者pavan kumar
相关产品推荐
相关产品推荐

