在ScrollViewer wpf中更改ScrollBar的背景颜色

时间:2011-06-29 21:56:25

标签: c# wpf templates xaml styles

我知道如何更改滚动条的背景颜色:

<ScrollBar Height="27" Margin="36,96,12,0" Name="scrollBar1" Background="Red"></ScrollBar>

这是我的红色背景图片: enter image description here

我怎么能用ScrollViewer做同样的事情?我的ScrollViewer中有一个网格,如果我更改ScrollViewer的属性,它似乎会改变网格内容的属性。

<ScrollViewer>


    <Grid Name="Parent">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
             ....
             ....
             ... etc

产生:

enter image description here

左边是名为Parent的网格内容。如何在此ScrollViewer上放置红色背景?

2 个答案:

答案 0 :(得分:5)

将ScrollViewer样式设置为您单独构建的样式。以下是作者首先创建样式的两个链接,然后将该样式应用于wpf控件:

http://www.codeproject.com/Articles/37366/Styling-A-ScrollViewer-Scrollbar-In-WPF.aspx

http://www.eggheadcafe.com/tutorials/aspnet/f51ddf8c-5227-4f1b-a5df-ec3d1b3439ca/styling-the-wpf-scrollviewer.aspx

答案 1 :(得分:1)

<Window.Resources>
    <Style TargetType="ScrollBar">
        <Setter Property="Background" Value="White"/>
    </Style>
</Window.Resources>

在上面的代码中,程序员可以提供他/她想要设置的任何颜色值。 例如,我已将滚动条的背景色设置为白色。