按钮的颜色变化

时间:2019-08-19 21:04:20

标签: c# wpf visual-studio

我是这个程序设计的新手。我想为Windows构建一个应用程序。此应用程序最简单的方法是在主window.xaml中放置一些按钮(到目前为止有55个)。我想对其中一个按钮进行编程。它称为“ U”。当人们按下U按钮(不在键盘上)时,应用程序将更改按钮的颜色。我开始制作程序。首先,我将U按钮放在主窗口中,并像其他按钮一样将其重命名。之后,我双击它,因此能够在主window.xaml.cs中编辑该功能。我写了这个程序:

P1.Background = K1.Background ; // (red - - > blue) 
K1.Background = N1.Background ; // (blue  - - > orange)  
N1.Background = Z1.Background ; // (orange  - - > green) 
Z1.Background = P1.Background ; // (green - - > red) 

创建后,背景颜色已经立即设置为P1,K1,N1,Z1按钮。

我的问题是,当我按下U按钮时,程序正确运行,并且最后一次交换(Z1 = P1)失败,因为之前我将P1颜色设置为K1颜色,这就是Z1实际上为K1的原因。 (我可以看到两个蓝色按钮,而没有红色)。将Z1颜色设置为红色的方法不好,因为P1和Z1可以是其他任何颜色。首先将Z1交换为P1,然后将最后一个N1交换为Z1的另一种方法不好,我将没有绿色。我该怎么办?

1 个答案:

答案 0 :(得分:0)

因此,首先将P1的颜色保存到一个临时变量中。

var tempP1 = P1.Background;
P1.Background = K1.Background ; // (red - - > blue) 
K1.Background = N1.Background ; // (blue  - - > orange)  
N1.Background = Z1.Background ; // (orange  - - > green) 
Z1.Background = tempP1 ; // (green - - > red) 
相关问题