如何使用LinearGradientBrush和Background

时间:2011-09-11 20:40:11

标签: wpf brush lineargradientbrush

我正在尝试使用LinearGradientBrush绘制WPF窗口的背景,但是我的代码不起作用。 这是代码

LinearGradientBrush gradientBrush = new  LinearGradientBrush( Color.FromArgb(0, 209, 227, 250),  Color.FromArgb(0, 170, 199, 238), new Point(0.5, 0), new Point(0.5, 1));
Background = gradientBrush;

不幸的是,我的窗户仍然是白色的。是否可以使用后面的代码更改窗口的背景颜色?

3 个答案:

答案 0 :(得分:10)

您还要设置Alpha设置。请使用此选项,因为您需要颜色:

LinearGradientBrush gradientBrush = new  LinearGradientBrush( Color.FromRgb( 209, 227, 250),  Color.FromRgb(170, 199, 238), new Point(0.5, 0), new Point(0.5, 1));
Background = gradientBrush;

答案 1 :(得分:2)

  <Border.Background>
                <LinearGradientBrush StartPoint="0 0" EndPoint="0 1">
                    <LinearGradientBrush.GradientStops>
                        <GradientStop Offset="0.1" Color="{Binding Path=YourBindColor1}" />
                        <GradientStop Offset="1" Color="{Binding Path=YourBindColor2}" />
                    </LinearGradientBrush.GradientStops>
                </LinearGradientBrush>
            </Border.Background>

//使用绑定颜色

答案 2 :(得分:0)

将Window.Background设置为其他画笔应该有效。

确保您的Background属性不通过{Binding}指令数据绑定到属性。

另外,尝试将其设置为更简单的画笔 - 例如

Background = new SolidColorBrush(Colors.Black);