通过代码更改Telerik WPF按钮颜色

时间:2014-09-23 15:23:51

标签: c# css .net wpf telerik

我学习WPF并构建一个简单的应用程序。 这是我的按钮:

<Button x:Name="btnAddFiles" Content="Add" HorizontalAlignment="Left" Margin="1046,34,0,0" VerticalAlignment="Top" 
        Width="111" Height="34" FontSize="20" Foreground="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}" 
        Background="{x:Null}" MouseEnter="btnAddFiles_MouseEnter" BorderBrush="Transparent" />

这就是它的样子:

http://s27.postimg.org/h0iq4mrrz/image.png

我已将按钮背景颜色更改为Transparent,因此您看到的背景颜色是我的所有应用程序背景颜色。 我想要做的就是当鼠标悬停在按钮上时将背景颜色更改为Transparent。 目前这是鼠标结束时的当前状态:

http://s30.postimg.org/x61ssujnx/image.png?noCache=1411485462

所以我注册了MouseEnter event

private void btnAddFiles_MouseEnter(object sender, MouseEventArgs e)
{
    //btnAddFiles.Background = // change the color
}

但我可以看到btnAddFiles.Background需要BrushColor 有什么想法改变它吗?

1 个答案:

答案 0 :(得分:0)

我看不到你的照片,但这就是我们改变wpf背景色的方式:

btnAddFiles.Background = Brushes.Transparent;

您可以在鼠标输入和鼠标离开事件中使用您的代码。

第一次修改

private void btnAddFiles_MouseEnter(object sender, MouseEventArgs e)
{
    btnAddFiles.Background = Brushes.Transparent;
}

private void btnAddFiles_MouseLeave(object sender, MouseEventArgs e)
{
    btnAddFiles.Background = Brushes.Lime;
}

第二次编辑:

用于更改边框颜色和厚度:

button1.BorderBrush = Brushes.Red;
Thickness t = new Thickness(5, 5, 5, 5);
button1.BorderThickness = t;

也改变你的保证金,它是表格。试试例如

Margin="50,50,0,0"

如果你得到答案,请告诉我。