ScrollViewer x:Name="PART_ContentHost"中的Foreground无效
时间: 2023-07-06 16:37:31 浏览: 111
scrollviewer跳转指定位置_WPF_scrollviewer_指定位置_跳转_ScrollViewerwpf_
在 WPF 中,`ScrollViewer` 控件内部包含一个名为 `PART_ContentHost` 的控件,它用于显示 `ScrollViewer` 内容的部分。在 `PART_ContentHost` 中设置 `Foreground` 属性无效是因为 `ScrollViewer` 控件默认会将 `PART_ContentHost` 的 `Foreground` 属性设置为 `ScrollViewer` 控件自身的 `Foreground` 属性。如果你想要自定义 `PART_ContentHost` 的前景色,你可以使用 `TemplateBinding` 来绑定 `PART_ContentHost` 的 `Foreground` 属性到 `ScrollViewer` 控件的自定义属性上。例如,你可以这样实现:
```xml
<ScrollViewer x:Name="MyScrollViewer" MyForeground="{Binding MyForegroundProperty}">
<ScrollViewer.Template>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Border BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}">
<ScrollContentPresenter x:Name="PART_ContentHost"
Foreground="{TemplateBinding MyForeground}"/>
</Border>
</ControlTemplate>
</ScrollViewer.Template>
</ScrollViewer>
```
其中,`MyForeground` 是自定义的属性,绑定到了 `MyForegroundProperty` 上,你可以在代码中通过设置 `MyForegroundProperty` 来改变 `PART_ContentHost` 的前景色。
阅读全文