C#UWP中的按钮背景颜色

时间:2017-01-09 09:02:33

标签: c# uwp

我有问题。我知道如何为用户点击它时的按钮背景颜色设置颜色。 Code Image

button.Background = new SolidColorBrush(Colors.Blue);

但是,如果用户再次单击它,它将更改按钮的默认颜色。我想获得按下按钮的背景颜色。

if(button.Background != (SolidColorBrush)(Colors.Blue))
{
    //code
}

1 个答案:

答案 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来实现相同的功能。