我正在处理一个UWP项目,我需要在应用程序运行时更改按钮的背景和前景色。我已经做到了,但我也有一段代码可以让我禁用所有UWP按钮中出现的恼人的悬停效果。
这是我的App.xaml代码:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Key="Default">
<SolidColorBrush x:Key="ButtonForegroundPointerOver" Color="White"/>
<SolidColorBrush x:Key="ButtonBackgroundPointerOver" Color="Gray"/>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
</ResourceDictionary>
</Application.Resources>
我想知道如何才能更改";颜色";属性以匹配每个按钮的状态(它们具有不同的颜色和背景(。是否有默认情况下将颜色设置为ButtonBackground属性的选项。如果没有,我如何在运行时更改每个按钮的样式?
您有很多方法可以在运行时更改按钮的样式,正如您上面提到的代码一样,您可以将ButtonForegroundPointerOver
SolidColorBrush放置在ThemeDictionaries
中,并为其提供亮-暗或默认键,当您更改应用程序的主题时,它将为使用默认样式的按钮控件应用匹配的ButtonForegroundPointerOver。
如何在运行时更改每个按钮的样式?
Button的样式属性可以在运行时设置,您可以使用键名创建不同的按钮样式,并从页面或应用程序资源加载它,然后应用于按钮样式。
有关详细信息,请参阅XAML样式文档。