如何使用 LinearGradientBrush 和背景

发布于 2024-12-04 07:28:36 字数 333 浏览 2 评论 0原文

我正在尝试使用 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;

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

I'm trying to paint a background of my WPF window using LinearGradientBrush, however my code doesn't work.
Here is the code

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;

Unforunatelly my window is still white. Is it possible to change the Background color of the window using code behind ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

浅语花开 2024-12-11 07:28:36

您还设置了 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;

You are setting the alpha setting also. Use this instead since you want the colour:

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;
じее 2024-12-11 07:28:36
<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>

//Use binding colors
<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>

//Use binding colors
吖咩 2024-12-11 07:28:36

将 Window.Background 设置为不同的画笔应该可以。

确保您的背景属性未通过 {Binding} 指令将数据绑定到属性。

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

Background = new SolidColorBrush(Colors.Black);

Setting the Window.Background to a different Brush should work.

Make sure your Background property is not databound to a property via {Binding} directive.

Also, try setting it to a more simpler Brush - for example

Background = new SolidColorBrush(Colors.Black);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文