日期:2014-05-20  浏览次数:20845 次

c#动态生成40个按钮,大小(20,20),要求每行6个放置,算法如何?
for   (int   i=0;i <基本数据DataSet3.Tables   [0].Rows   .Count   ;i++)  
{  

Button   myButton   =   new   Button();  
myButton.Size   =   new   Size(20,   20);  
myButton.Text   =   基本数据DataSet3.Tables[0].Rows[i][0].ToString();  
-〉   myButton.Left   =   0   +i*   20;-〉  
myButton.Top   =   0;  
this.panel2.Controls.Add(myButton);  
}  

位置每行6个后换行,如何编写?


------解决方案--------------------
I乘10除6取整,放置高度*倍数

for (int i=0;i <基本数据DataSet3.Tables [0].Rows .Count ;i++)
{
int TempInt = i%6;//取余数,计算横坐标用。
int TempInt2= System.Math.Floor(i%6);//取整数,看放置在第几行。
Button myButton = new Button();
myButton.Size = new Size(20, 20);
myButton.Text = 基本数据DataSet3.Tables[0].Rows[i][0].ToString();
myButton.Left = 0 + TempInt * 20;
myButton.Top = 0 + TempInt2 * 20;
this.panel2.Controls.Add(myButton);
}