private void InitializeLabels(int column,int row)
{
this.tabPage1.Controls.Clear();
Label lbl;
for (int i = 0; i < row; i++)
{
for (int j = 0; j < column; j++)
{
lbl = new Label();
lbl.BackColor = Color.Yellow;
lbl.AutoSize = false;
lbl.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
lbl.Location = new System.Drawing.Point(120,120);
lbl.Name = "lbl" + (j + 1).ToString() + "_" + (i + 1).ToString();
lbl.Size = new System.Drawing.Size(40, 20);
//设置座位号
lbl.Text = (j + 1).ToString() + "-" + (i + 1).ToString();
lbl.TextAlign = ContentAlignment.MiddleCenter;
lbl.Location = new Point(10 + (i * 50), 30 + (j * 35));
this.tabPage1.Controls.Add(lbl);
}
}
上面主要是用绘图的方法代码来实现座位列表。但是,每次加载的读取座位列表的时候,都很慢,读取到之后,我点刷新按钮,要等上两秒钟才可以显示座位。现在我想问一下你们,不用绘图的方法,直接用控件,有什么好的控件做座位的吗?要可以使某个标签变色的(如使 1-1 变成红色)。急呀,请指点!!!
在初始化时生成lb 在更改颜色时不要clear 直接变颜色 速度就快了