You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改FlowDocumentReader中查找文本框的前景色与背景色?

问题原因

你修改外层FlowDocument和FlowDocumentReader的属性不生效,是因为自带的查找搜索框属于FlowDocumentReader控件模板的内部子元素,外层属性没有传递到内部的文本框控件上。

解决方案

方案1:添加内部隐式样式(最简单,优先使用)

直接在FlowDocumentReader的Resources节点下添加针对内部文本框的样式,覆盖默认的颜色配置:

<FlowDocumentReader  Grid.RowSpan="4" Grid.Column="1" Name="flowDocReader" IsFindEnabled="True">
    <FlowDocumentReader.Resources>
        <!-- 修改查找输入框的颜色 -->
        <Style TargetType="TextBox">
            <Setter Property="Background" Value="White" />
            <Setter Property="Foreground" Value="Black" />
            <Setter Property="BorderBrush" Value="#FFABADB3" />
            <Setter Property="Padding" Value="2,0" />
        </Style>
        <!-- 可选:如果下拉搜索历史选项也有显示问题,添加这个样式 -->
        <Style TargetType="ComboBoxItem">
            <Setter Property="Background" Value="White" />
            <Setter Property="Foreground" Value="Black" />
        </Style>
    </FlowDocumentReader.Resources>
    <FlowDocument Name="flowDoc"/>
</FlowDocumentReader>

你可以根据自己的界面主题调整Background和Foreground的色值。

方案2:修改控件模板(方案1不生效时使用)

如果你项目中使用了第三方主题包、全局样式覆盖了FlowDocumentReader的默认模板,就需要手动修改控件模板:

  1. 在Visual Studio设计视图中右键点击FlowDocumentReader控件,选择「编辑模板」→「编辑副本」,将默认模板保存到资源字典中
  2. 在模板中找到名称为PART_FindTextBox的TextBox控件
  3. 直接修改该控件的Background、Foreground属性为你需要的色值即可

内容的提问来源于stack exchange,提问作者user16052640

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:12:01