自动生成控件checkbox 换行问题
public static void ChecckBoxGroup(GroupBox group, DataTable dt)//生成checkbox
{
for (int i = dt .Rows .Count-1 ; i >= 0; i--)
{
//RadioButton rb = new RadioButton();
CheckBox rb = new CheckBox();
rb.Dock = DockStyle.Left;
rb.Top = group.Top + 10*i;
rb.Tag = i.ToString();
rb.Text = dt .Rows [i][0].ToString ();
rb.Padding = new Padding(0, 0, 2, 0);
rb.AutoSize = true;
group.Controls.Add(rb);
}
}
这方法我写好了,不知道如何处理自动换行问题,checkbox 数量多了之后,后面的就看不到了。
假设设置一行显示5个。如何自动换行。
------解决方案--------------------你这个根本就不可能实现你的要求。
public void ChecckBoxGroup(GroupBox group, DataTable dt)//生成checkbox
{
int iRemain;
int iCount = Math.DivRem(dt.Rows.Count - 1, 5, out iRemain);
int index = dt.Rows.Count - 1;
for (int i = 0; i < iCount; i++)
{
int left = 0;
for (int j = 0; j < 5;j++ )
{
CheckBox rb = new CheckBox();
rb.Tag = index.ToString();
rb.Text = dt.Rows[index][0].ToString();
&nbs