我有问题。我知道如何为用户点击它时的按钮背景颜色设置颜色。 Code Image
button.Background = new SolidColorBrush(Colors.Blue);
但是,如果用户再次单击它,它将更改按钮的默认颜色。我想获得按下按钮的背景颜色。
if(button.Background != (SolidColorBrush)(Colors.Blue))
{
//code
}
答案 0 :(得分:-1)
我已经测试了此代码,以便在UWP应用中使用。
if (!toggle)
{
x = (SolidColorBrush)backButton.Background;
backButton.Background = new SolidColorBrush(Colors.Blue);
toggle = true;
}
else
{
backButton.Background = x;
toggle = false;
}
最初,切换的值应为false(或根据您的逻辑为真)。
编辑:
如果您需要在更新按钮颜色之前检查背景画笔,可以使用以下代码:
SolidColorBrush originalBrush;
SolidColorBrush newBrush = new SolidColorBrush(Colors.Blue);
private void backButton_Click(object sender, RoutedEventArgs e)
{
if ((SolidColorBrush)backButton.Background==newBrush)
{
backButton.Background = originalBrush;
}
else
{
originalBrush = (SolidColorBrush)backButton.Background;
backButton.Background = newBrush;
}
}
此外,如果您使用相同颜色的许多按钮,您可以使用ToggleButton来实现相同的功能。