我有一个Windows Form
,在checkboxes
中显示tableLayoutPanel
列表。
正在显示复选框,但它们之间的间距非常奇怪。 tableLayoutPanelMsgs.ColumnCount
设置为1。
这是我的代码:
DataTable messagesTable = ds.Tables[0];
foreach (DataRow row in messagesTable.Rows)
{
CheckBox ck = new CheckBox();
ck.Text = row[1].ToString();
tableLayoutPanel1.Controls.Add(ck);
}
这是Windows窗体中复选框的外观。注意每个复选框之间的间距。
我该如何解决这个问题?再次感谢。
答案 0 :(得分:2)
答案 1 :(得分:0)
为添加的每个复选框致电SetRow,将其放入tableLayoutPanel1
内的单独行:
DataTable messagesTable = ds.Tables[0];
int I = 0;
tableLayoutPanel1.RowCount = messagesTable.Rows.Count;
foreach (DataRow row in messagesTable.Rows)
{
CheckBox ck = new CheckBox();
ck.Text = row[1].ToString();
tableLayoutPanel1.Controls.Add(ck);
tableLayoutPanel1.SetRow(ck, i++);
}