我已经删除了rectancle数组
Rectangle[] rec = new Rectangle[size];
也贬低了那些功能
public void process()
{
for (int k = 0; k < 3; k++)
{
rec[k].Fill = Brushes.Green;
}
}
private void createRectangle()
{
int width = 32;
int height = 32;
int top = 20;
int left = 20;
for (int j = 0; j < banks; j++)
{
for (int i = 0; i <= size ; i++)
{
rec[i].Name = "0" + i.ToString();
rec[i].Width = width;
rec[i].Height = height;
rec[i].Fill = Brushes.Red;
canvas.Children.Add(rec[i]);
Canvas.SetTop(rec[i], top);
Canvas.SetLeft(rec[i], left);
left += 40;
}
left = 20;
top += 50;
}
}
在主
中调用这些方法时createRectangle();
process();
process();
做的是在绘制矩形后将填充颜色更改为红色
考虑size = 5
和banks = 3
我想要实现的是我想要改变一些矩形的颜色,并且我得到一个错误“在FYP(改进的).exe中发生类型'System.IndexOutOfRangeException'的未处理异常” 我不知道我在代码中做错了什么。 请详细说明解决方案