Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 运行时设置按钮的背景色不起作用_C#_Wpf - Fatal编程技术网

C# 运行时设置按钮的背景色不起作用

C# 运行时设置按钮的背景色不起作用,c#,wpf,C#,Wpf,我有一个按钮,在鼠标输入事件中有以下代码: private void CloseB_MouseEnter(object sender, MouseEventArgs e) { CloseB.Background = Brushes.Red; } 但当鼠标进入时,按钮的颜色会变成奇怪的浅蓝色(几乎是白色)。 我已经尝试将“不透明度”设置为1,并将“背景”属性设置为: 新的SolidColorBrush(Colors.Red) 它位于背景色设置为黑色的栅格中。按钮的原始颜色也是黑色。 我不知道

我有一个按钮,在鼠标输入事件中有以下代码:

private void CloseB_MouseEnter(object sender, MouseEventArgs e) {
  CloseB.Background = Brushes.Red;
}
但当鼠标进入时,按钮的颜色会变成奇怪的浅蓝色(几乎是白色)。

我已经尝试将“不透明度”设置为1,并将“背景”属性设置为:
新的SolidColorBrush(Colors.Red)

它位于背景色设置为黑色的栅格中。按钮的原始颜色也是黑色。
我不知道我错过了什么。


注意:变量CloseB是我的按钮。

正如@kennyzx提到的,我看到的颜色是鼠标结束时按钮的默认颜色。


我修复了删除按钮xaml中的Background属性并添加基于以下内容的样式的问题:

我认为您正在尝试使用触发器。因此,首先在按钮定义中应用样式,并为您的事件定义触发器。

您看到的是鼠标悬停按钮时的颜色。您设置的背景色是正常状态下的颜色(无鼠标悬停)。鼠标移出后是红色的吗?不是,只是因为我有另一种方法在鼠标离开后将背景色再次设置为黑色。谢谢。我从来没有想过。但现在我有另一个问题要解决。欢迎。按钮有许多定义的状态,如禁用状态、聚焦状态、按下状态,每个状态都有不同的背景色。为了达到您的要求,您需要学习如何编辑按钮的
控制模板