我对Windows Phone和C#也有所了解。我发现有一个 IndexOutOfRangeException在我着色()函数:IndexOutOfRangeException - Windows Phone(C#)
public void Coloring()
{
szinek_base.Add(Color.FromArgb(255, 0, 171, 169));
szinek_base.Add(Color.FromArgb(255, 140, 191, 38));
szinek_base.Add(Color.FromArgb(255, 160, 80, 0));
szinek_base.Add(Color.FromArgb(255, 230, 113, 184));
szinek_base.Add(Color.FromArgb(255, 240, 150, 9));
szinek_base.Add(Color.FromArgb(255, 27, 161, 226));
szinek_base.Add(Color.FromArgb(255, 229, 20, 0));
szinek_base.Add(Color.FromArgb(255, 51, 153, 51));
int remove;
Color szin = new Color();
Random generator = new Random();
List<int> lapok = new List<int>();
for (int l = 0; l < 16; l++)
{
lapok.Add(l);
}
for (int i = 0; i < 8; i++)
{
szin = szinek_base[generator.Next(0, szinek_base.Count)];
remove = lapok[generator.Next(0, lapok.Count)];
szinek[remove] = szin;
lapok.Remove(remove);
szinek_base.Remove(szin);
remove = lapok[generator.Next(0, lapok.Count)];
szinek[remove] = szin;
lapok.Remove(remove);
szinek_base.Remove(szin);
}
}
使用的try-catch我还发现,第二个为()循环包含错误。 但是,如果我分成一半的块和使用try-catch,它不会发现错误,也不在第一部分 既不是第二个。这段代码在windows 7下工作正常,顺便说一句,我没有想法。 感谢您的帮助,对于语法错误和其他错误感到抱歉,我还没有意识到StackOverflow协议。
编辑:忘了提,主要的命名空间包含其中:
public List<Color> szinek_base = new List<Color>();
Color[] szinek = new Color[8];
您应该检查异常堆栈跟踪。这将确切地告诉你问题出在哪里。 – ColinE 2012-04-10 10:08:09
什么是szinek? – 2012-04-10 10:17:35