我在winforms,C#应用程序中有一个ListBox。 我需要在代码中添加ListBox CheckBoxes,我需要当有很多CheckBox并且ListBox无法全部显示时会出现HorizontalScrollbar。 我已将ListBox放在Window上,并将其HorizontalScrollbar设置为true。我也设置了ListBox的最大高度和宽度。但是当我运行应用程序时,我看不到所有的CheckBoxes ... 任何人都可以帮忙吗?
这是添加复选框的代码:
listBox1.HorizontalScrollbar = true;
this.groupBox_ChooseTCPipConfg.Controls.Add(listBox1);
CheckBox chk1 = new CheckBox();
chk1.Text = "chk1";
chk1.Location = new Point(2, 2);
listBox1.Controls.Add(chk1);
CheckBox chk2 = new CheckBox();
chk2.Text = "chk2";
chk2.Location = new Point(2,22);
listBox1.Controls.Add(chk2);
CheckBox chk3 = new CheckBox();
chk3.Text = "chk3";
chk3.Location = new Point(2, 42);
listBox1.Controls.Add(chk3);
CheckBox chk4 = new CheckBox();
chk4.Text = "chk4";
chk4.Location = new Point(2, 62);
listBox1.Controls.Add(chk4);
CheckBox chk5 = new CheckBox();
chk5.Text = "chk5";
chk5.Location = new Point(2, 82);
listBox1.Controls.Add(chk5);
CheckBox chk6 = new CheckBox();
chk6.Text = "chk6";
chk6.Location = new Point(2, 102);
listBox1.Controls.Add(chk1);
CheckBox chk7 = new CheckBox();
chk7.Text = "chk7";
chk7.Location = new Point(2, 122);
listBox1.Controls.Add(chk7);
CheckBox chk8 = new CheckBox();
chk8.Text = "chk8";
chk8.Location = new Point(2, 142);
listBox1.Controls.Add(chk8);
CheckBox chk9 = new CheckBox();
chk9.Text = "chk9";
chk9.Location = new Point(2, 162);
listBox1.Controls.Add(chk9);
CheckBox chk10 = new CheckBox();
chk10.Text = "chk10";
chk10.Location = new Point(2,202);
listBox1.Controls.Add(chk10);
当我运行应用程序时,我只能看到前7个复选框....
答案 0 :(得分:1)
不要忘记阅读以上msdn参考上的备注。
答案 1 :(得分:1)
您没有ListBox
滚动,因为您没有添加任何项目。您只需将CheckBox
控件放在里面。如果您需要很多项目,则滚动显示为oly。
出于此目的,请使用FlowLayoutPanel
控件。
以下是如何为FlowLayoutPanel