C#更改按钮的背景颜色

时间:2011-02-14 10:25:16

标签: c# wpf button background

使用C#和Visual Studio 2010,如何在按下另一个按钮后更改按钮的背景颜色?我不包括系统。?错?

目前我所拥有的是:

  

ButtonToday.Background = Color.Red;

它没有用。

7 个答案:

答案 0 :(得分:65)

的WinForm:

private void button1_Click(object sender, EventArgs e)
{
   button2.BackColor = Color.Red;
}

WPF:

private void button1_Click(object sender, RoutedEventArgs e)
{
   button2.Background = Brushes.Blue;
}

答案 1 :(得分:12)

在WPF中,背景不是Color,而是Brush。所以,试试这个对于初学者:

using System.Windows.Media;

// ....

ButtonToday.Background = new SolidColorBrush(Colors.Red);

但更明智的是,您应该在Xaml而不是代码中看一下这样做。

答案 2 :(得分:4)

SolidColor设置背景颜色的代码:

button.Background = new SolidColorBrush(Color.FromArgb(Avalue, rValue, gValue, bValue));

答案 3 :(得分:1)

我首先遇到了为WPF应用程序控件设置颜色的问题。 它默认情况下不包含System.Windows.Media,但包含Windows.UI.Xaml.Media,其中包含一些预先填充的颜色。

我最终使用以下代码行来使其工作:

grid.Background.SetValue(SolidColorBrush.ColorProperty, Windows.UI.Colors.CadetBlue);

您应该可以将grid.Background更改为大多数其他控件,然后将CadetBlue更改为其提供的任何其他颜色。

答案 4 :(得分:1)

// WPF

// Defined Color
button1.Background = Brushes.Green;

// Color from RGB
button2.Background = new SolidColorBrush(Color.FromArgb(255, 0, 255, 0));

答案 5 :(得分:0)

我怀疑这些是否应该有效。 尝试: 首先在代码页的开头导入命名空间,如下所示。

using System.Drawing;

然后在代码中。

Button4.BackColor = Color.LawnGreen;

希望它有所帮助。

答案 6 :(得分:0)

this.button2.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(29)))), ((int)(((byte)(190)))), ((int)(((byte)(149)))));