如何在FlowDocumentReader中更改选定文本的选择背景颜色

本文关键字:文本 选择 颜色 背景 FlowDocumentReader | 更新日期: 2023-09-27 18:03:02

我试图使选定的文本在FlowDocument使用我们的自定义主题。对于其他控件,我们使用Style来覆盖默认值:

    <Style.Resources>
        ...
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}"
                         Color="{DynamicResource trimGroundColor}"/>
    </Style.Resources>

但是这种方法似乎不适合我们使用FlowDocument。我已经尝试将这种风格应用于FlowDocument, FlowDocumentReader,以及使用snoop检查可视化树的几个步骤。

最终,选择UI似乎是由AdornerDecorator中的AdornerLayer绘制的。我已经尝试使用上述针对AdornerDecorator的样式方法,但没有成功。

我们正在尝试在整个应用范围内使用默认样式。

我们如何改变这个颜色?

如何在FlowDocumentReader中更改选定文本的选择背景颜色

可以通过修改FlowDocumentReader来改变颜色。SelectionBrush属性:

 <Style
      TargetType="FlowDocumentReader">
      <Setter Property="SelectionBrush"
              Value="{DynamicResource trimGroundBrush}"/>
 </Style>

注意:在问题中的代码示例中,我们正在使用颜色资源,而在此解决方案中,我们正在使用画笔。