在我的项目中,我有一个像棋盘一样的按钮网格(8x8; 64个按钮)。 当我首先点击一个按钮时,我想将其设置为绿色(并禁用)并将其文本复制到名为“绿色”的文本框中。当我在此之后单击另一个按钮时,我想将其设置为红色(并禁用)并将其文本复制到名为“Red”的TextBox。 我该怎么办? (按顺序(第一个和最后一个)并在一个处理程序中)。
请查看给定的图片。考虑我先点击E2,它变为绿色并禁用。之后我点击F2,它变为红色并禁用。
答案 0 :(得分:1)
您可以将以下事件注册到所有按钮:
private int buttonClickCount; //set to 0 in constructor
private void button1_Click(object sender, EventArgs e)
{
buttonClickCount++; //add 1
switch (buttonClickCount)
{
case 1:
this.Red.Text = (sender as Button).Text;
(sender as Button).BackColor = Color.Red;
break;
case 2:
this.Green.Text = (sender as Button).Text;
(sender as Button).BackColor = Color.Green;
break;
//add other cases here
default:
buttonClickCount--; //add some logic if something unexpected happens
break;
}
}