我有两种颜色“红色”和“鲑鱼色”。我需要动态创建面板以及面板背景颜色。这些颜色必须介于两种颜色之间(红色
public Color x, y;
protected void Page_Load(object sender, EventArgs e)
{
BackGroundColorArranger(Color.Red, Color.Salmon);
}
void BackGroundColorArranger(Color x, Color y)
{
BackGroundColorArrangerBase(Convert.ToInt32((float)(x.ToArgb() + y.ToArgb()) / 2));
}
void BackGroundColorArrangerBase(int z)
{
Panel panel = new Panel();
panel.ID = z.ToString();
panel.Width = 150;
panel.Height = 50;
panel.BackColor = Color.FromArgb(z);
this.Controls.Add(panel);
BackGroundColorArranger(x, Color.FromArgb(z));
}
但我该怎么做呢。上面的代码给了我 stackoverflow 错误。
因为您递归调用 BackGroundColorArranger 且没有退出条件。这里有一个提示,当您在调试器中遇到堆栈溢出异常时,转到“调试菜单”->“Windows”->“调用堆栈”,您将立即看到问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)