I'm getting the below error at var okColors = colors.ToArray();
Cannot evaluate expression because the current thread is in a stack overflow state.
Can you please help on this?
private Color GetRandomColor()
{
Random randomGen = new Random();
Color randomColor = Color.Red;
KnownColor[] names = (KnownColor[])Enum.GetValues(typeof(KnownColor));
KnownColor[] badColors = { KnownColor.AliceBlue };
IEnumerable<KnownColor> colors = names.Except(badColors);
var okColors = colors.ToArray();
KnownColor randomColorName = okColors[randomGen.Next(okColors.Length)];
randomColor = Color.FromKnownColor(randomColorName);
if (!ColorsList.Contains(randomColor) && !randomColor.Name.Contains("Light"))
ColorsList.Add(randomColor);
else
GetRandomColor();
return randomColor;
}