我使用这个:如果thisbid(int)等于buildingid1,那么thisb是brick1的控件(这是按钮)。然后我需要改变按钮的图片,但是用这个,因为我有30多张照片,所以我不想把时间花在我身上。
这就是我试图做的事情:
public void Get_Block_Images()
{
if (thisbid == buildingid[1])
{
var thisb = this.Controls.Find("brick1", true);
}
else if (thisbid == buildingid[2])
{
var thisb = this.Controls.Find("brick2", true);
}
switch (thisbid)
{
case 1:
{
thisb.Image = brick_def_1;
break;
}
case 2:
{
thisb.Image = brick_def_white;
break;
}
case 3:
{
thisb.Image = brick_stan_nature;
break;
}
case 4:
{
thisb.Image = brick_stan_pixel;
break;
}
case 5:
{
thisb.Image = brick_stan_black_gold;
break;
}
//etc...
答案 0 :(得分:0)
简而言之,您需要移动thisb
变量,使其与switch语句在同一范围内。例如,您需要执行以下操作:将此行放在if语句上方:
var thisb = new Button();
请注意,检查if语句和switch语句中的thisbid
。为什么不把它们合并在一起?