private void CreatEmptyItem(int x, int y) { int resultX; int resultY; resultX = positioningLabel[x].Location.X; resultY = positioningLabel[x].Location.Y + COLUMN_SPAN_FIRST + y * COLUMN_SPAN; if (!table_current.ContainsKey(new Point(x, y))) { Label newLbl = new Label() { Font = new Font(new FontFamily("微软雅黑"), (float)10.28571), Location = new Point(resultX, resultY), AutoSize = false, Size = new Size(123, 78), TextAlign = ContentAlignment.MiddleCenter }; panel.Controls.Add(newLbl); TableItem_Context newTC = new TableItem_Context(newLbl, new Point(x, y)); newTC.LabelClickedEvent += ProgramData.Form_TableEdit.TableItem_Clicked; createdLabel.Add(newLbl); table_current.Add(new Point(x, y), newTC); } }
private void CreatItem(int x, int y, TimeSpan item) { int resultX; int resultY; resultX = positioningLabel[x].Location.X; resultY = positioningLabel[x].Location.Y + COLUMN_SPAN_FIRST + y * COLUMN_SPAN; if (item.GetType() == typeof(TimeSpan_Title)) { //创建title if (!table_current.ContainsKey(new Point(x, y))) { TimeSpan_Title tmp = (TimeSpan_Title)item; Label newLbl = new Label() { Font = new Font(new FontFamily("微软雅黑"), (float)10.28571), Location = new Point(resultX, resultY), AutoSize = false, Size = new Size(123, 78), TextAlign = ContentAlignment.MiddleCenter }; newLbl.Text = tmp.Outline + "\n" + tmp.StartTime.ToString("t") + "-" + tmp.EndTime.ToString("t"); TableItem_Title newTT = new TableItem_Title(newLbl, (TimeSpan_Title)item, new Point(x, y)); newTT.LabelClickedEvent += ProgramData.Form_TableEdit.TableItem_Clicked; table_current.Add(new Point(x, y), newTT); panel.Controls.Add(newLbl); } } else { //创建context if (table_current.ContainsKey(new Point(x, y))) { //已存在时,仅绘制信息 TableItem_Context ttmp = (TableItem_Context)table_current[new Point(x, y)]; ttmp.UpdateLableText(); } else { //不存在时,创建 Label newLbl = new Label() { Font = new Font(new FontFamily("微软雅黑"), (float)10.28571), Location = new Point(resultX, resultY), AutoSize = false, Size = new Size(123, 78), TextAlign = ContentAlignment.MiddleCenter }; TableItem_Context newTC = new TableItem_Context(newLbl, new TimeSpan_Context[] { (TimeSpan_Context)item }, new Point(x, y)); newTC.LabelClickedEvent += ProgramData.Form_TableEdit.TableItem_Clicked; table_current.Add(new Point(x, y), newTC); newTC.UpdateLableText(); panel.Controls.Add(newLbl); createdLabel.Add(newLbl); } } }