유동 레이아웃 패널에 버튼이 많습니다. 프로그래밍 방식으로이 버튼을 만들었습니다. 하지만 두 번째 클릭 후 색상이 밝은 녹색으로 바뀌면 색상을 재설정 할 수 없습니다. 흐름 레이아웃 패널에이 핸들러를 작성했습니다. 두 번째 클릭으로 버튼 색상을 지우려면 어떻게해야합니까?흐름 레이아웃 패널에서 버튼 색상을 두 번째로 클릭하는 방법 C#
private void Form1_Load(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
sb.Append("3 x coca cola 33 cl");
sb.Append(Environment.NewLine);
sb.Append("DIN");
sb.Append("\t\t");
sb.Append("200");
//button2.Text = sb.ToString();
string products = "30000|3;3110002;Cola;400;150;100;1;1000|3;3110003;Snickers;400;150;100;1;1000|3;3110004;NesttleCrunch;400;150;100;1;1000|3;3110005;Marlbora;400;150;100;1;1000|3;3110006;Orange;400;150;100;1;1000|3;3110007;Milk;400;150;100;1;1000|3;3110008;Water;400;150;100;1;1000|3;3110009;Banana;400;150;100;1;1000|3;3110010;Honey;400;150;100;1;1000|3;3110011;Beer;400;150;100;1;1000|3;3110012;Hazelnut;400;150;100;1;1000|3;3110013;RedBull;400;150;100;1;1000|3;3110014;ChewingGum;400;150;100;1;1000|3;3110015;Apple;400;150;100;1;1000";
string[] listproducts = products.Split('|');
lblAvaliablePoint.Text = listproducts[0];
for (int i = 1; i < listproducts.Count();i++)
{
string[] perproduct = listproducts[i].Split(';');
Button newButton = new Button();
newButton.Size = new System.Drawing.Size(170, 87);
newButton.BackColor = Color.LightGray;
newButton.UseVisualStyleBackColor = false;
newButton.Tag =perproduct[1];
newButton.Text = perproduct[0] + "x" + perproduct[2];
newButton.Click += new EventHandler(ButtonClickHandler);
flowLayoutPanel1.Controls.Add(newButton);
}
flowLayoutPanel1.VerticalScroll.Maximum = flowLayoutPanel1.Height+40;
flowLayoutPanel1.VerticalScroll.LargeChange = 30;
}
public void ButtonClickHandler(Object sender,EventArgs e)
{
((Button)sender).BackColor = Color.LightGreen;
}
내가 당신의 문제를 이해 모르겠지만, 난 당신이) 경우 (((버튼) 보낸 사람'같은 뭔가를 .BackColor == 색상을 찾고있는 것 같아요 .LightGreen) {((Button) sender) .BackColor == Color.White} else {((Button) sender) .BackColor == Color.LightGreen}; ' – Pikoh
감사합니다 Pikoh가 맞습니다. 지금은 작동 중입니다 –