列表上的索引小于列表大小

时间:2014-11-28 13:12:16

标签: c#

我创建了一个添加按钮的方法这是代码...

private void button1_Click(object sender, EventArgs e)
{
        Graphics graphics = this.CreateGraphics();
        SolidBrush brusha = new SolidBrush(Color.Green);
        Rectangle rectangle = new Rectangle(50, 10, 200, 200);
        float[] Angels = { 0, 43, 79, 124, 169, 252, 331, 360, 200, 200, 100, 100 };
        Color[] color = {Color.SandyBrown, Color.Cornsilk, Color.Firebrick,Color
                              .OliveDrab, Color.LawnGreen, Color.SandyBrown, Color.Blue};
        grafika.Clear(Color.Ivory);
        int angle;
        for (angle = 1; angle < Angels.Length; angle++)
        {
            brusha.Color = color[angle - 1];
            grafika.FillPie(brusha, rectangle, Angels[angle - 1], Angels[angle] - Angels[anglei - 1]);
        }
        grafika.DrawEllipse(Pens.Black, rectangle);

当我运行这个应用程序时,我得到了 “错误确保列表中的最大索引小于列表大小” 请告诉我我做错了什么 谢谢

1 个答案:

答案 0 :(得分:1)

这里:

brusha.Color = color[angle - 1];

Angels.length等于12,所以在某个地方,你正在做

brusha.Color = color[11];

问题是color数组只有7个元素,因此无法访问其第11个元素。