我想在 listBoxSelectedIndexChanged
事件上,在我想创建这些控件之前动态创建一些控件 [标签和轨迹栏],我需要删除所有标签和轨迹栏。
并非在每个列表框SelectedIndexChanged
事件上都需要生成尽可能多的标签和文本框。我如何确保每次调用事件时都会创建控件的价格数量。
当前的想法:删除trackbar和labels,而不是创建它们,但是你当然会得到一个错误,trackbar/label不存在。
到目前为止我想到的代码:
if (trackbar != null)
{
trackBar.Dispose();
}
for (int i = 0; i < calc; i++)
{
Label Label = new Label();
Label.Name = "TrackbarWidth" + a++;
Label.Text = "Board -" + a + "- Height:";
Label.Location = new Point(10, 450 + (50 * c));
Label.Size = new System.Drawing.Size(100, 25);
this.Controls.Add(Label);
TrackBar trackBar = new TrackBar();
trackBar.Name = "TrackbarWidth" + c++;
trackBar.Maximum = 85;
trackBar.Minimum = 65;
trackBar.SmallChange = 5;
trackBar.TickFrequency = 5;
trackBar.Value = 65;
trackBar.Location = new Point(150, 450 + (50 * c));
trackBar.Size = new System.Drawing.Size(100, 25);
TrackBarAdded.Insert(0, trackBar);
this.Controls.Add(trackBar);
}