首先我不知道你的button是不是需要动态生成,我就当你已经在界面中拉好了。
然后有多少个panel在窗体上放好,每个panel中放好一个button按钮,再把所有的panel放到一个数组中,最后调用如下方法就行了
程序代码:
private void ShowButton(Panel[] panels)
{
if (panels == null) return;
Random random = new Random();
int count = panels.Length;
Button temp;
for (int i = 0; i < count; i++)
{
int val = random.Next(count);
if (val != i)
{
temp = panels[i].Controls[0] as Button;
panels[i].Controls.Clear();
panels[i].Controls.Add(panels[val].Controls[0] as Button);
panels[val].Controls.Clear();
panels[val].Controls.Add(temp);
}
}
}