Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.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
Xaml 单击时更改按钮的前景_Xaml_Button_Colors_Uwp - Fatal编程技术网

Xaml 单击时更改按钮的前景

Xaml 单击时更改按钮的前景,xaml,button,colors,uwp,Xaml,Button,Colors,Uwp,所以我所要做的就是在点击按钮时改变按钮的颜色,但是我花了很多时间在错误上,找不到任何有用的东西。了解我是Visual Studio 2015社区的新成员 似乎有很多方法可以做到这一点,要么使用画笔,要么使用SolidColorBrush,要么进行转换 请注明所需的使用和参考资料 这是我的按钮: <Button x:Name="CastButton" Click="CastButton_Click" HorizontalAlignment="Right"

所以我所要做的就是在点击按钮时改变按钮的颜色,但是我花了很多时间在错误上,找不到任何有用的东西。了解我是Visual Studio 2015社区的新成员

似乎有很多方法可以做到这一点,要么使用画笔,要么使用SolidColorBrush,要么进行转换

请注明所需的使用和参考资料

这是我的按钮:

<Button x:Name="CastButton"
        Click="CastButton_Click"
        HorizontalAlignment="Right"
        VerticalAlignment="Bottom"
        Margin="0,0,35,10"
        FontFamily="Segoe MDL2 Assets"
        FontSize="24"
        Foreground="AliceBlue"
        Content="&#xE72D;">
</Button>

如果要在按下按钮时更改前景色,则必须修改控件的样式。右键单击designer窗口中的按钮,然后编辑模板->编辑副本-这将在参考资料中创建默认模板的副本,如下所示:


您将发现按钮的颜色是由可视状态管理器根据当前状态更改的。在按下状态下,您会发现:


这意味着,无论您设置为前景,当按下时,VisualStateManager将始终将按钮的颜色更改为SystemControlHighlightBaseHighBrush。当然,您可以在样式中自由更改此值。然后仅将其应用于您的按钮:


如果要在按下按钮时更改前景色,则必须修改控件的样式。右键单击designer窗口中的按钮,然后编辑模板->编辑副本-这将在参考资料中创建默认模板的副本,如下所示:


您将发现按钮的颜色是由可视状态管理器根据当前状态更改的。在按下状态下,您会发现:


这意味着,无论您设置为前台,当按下时,visual state manager都会