winform PictureBox图片上动态添加Label或其他控件

匿名 (未验证) 提交于 2019-12-02 23:47:01

代码:

 //分页或者多次加载时,需要删除之前产生的lable等控件
   for (int tabID = 0; tabID < 15; tabID++)             {                 foreach (Control control in this.tableLayoutPanel2.Controls)                 {                      // 遍历所有TextBox...                     if (control is PictureBox)                     {                         PictureBox t = (PictureBox)control;                        if (control.TabIndex == tabID)                         {                             if (tabID > list.Count - 1)                             {                                 for (int i = tabID; i < 15; i++)                                 {                                     //this.tableLayoutPanel2.Controls.Remove(control);                                     t.ImageLocation = null;                                     t.Controls.Remove(t.Controls[tabID.ToString()]);                                     string d = ("NO" + tabID.ToString());                                     t.Controls.Remove(t.Controls[d]);                                     t.Tag = -1;                                 }                                 break;                             }                               t.ImageLocation = list[tabID].VehicleImage;                             t.Tag = (list[tabID].Id).ToString();                             string m = ("NO" + tabID.ToString());                             t.Controls.Remove(t.Controls[tabID.ToString()]);                             t.Controls.Remove(t.Controls[m]);                             Label C = new Label();                             C.Parent = t;                             C.Width = 100;                             C.Text = list[tabID].VehicleNumber;                             C.Font = new Font("", 15);                             C.ForeColor = Color.Black;                              C.Dock = DockStyle.Top;                             C.BackColor = Color.Transparent;                             C.TextAlign = ContentAlignment.TopLeft;                             C.AutoSize = false;                             C.Name = "NO" + tabID.ToString();                              Label B = new Label();                             B.Parent = t;                             B.Width = 100;                             B.Text = list[tabID].VehicleZT;                             B.Font = new Font("", 18);                             switch (list[tabID].VehicleZT) {                                 case "待派":                                     B.ForeColor = Color.Blue;                                     break;                                 case "已派":                                     B.ForeColor = Color.Green;                                     break;                                 case "维修":                                     B.ForeColor = Color.Yellow ;                                     break;                                 case "停驶":                                     B.ForeColor = Color.Red;                                     break;                             }                             B.Dock = DockStyle.Bottom;                             B.BackColor = Color.Transparent;                             B.TextAlign = ContentAlignment.BottomRight;                             B.AutoSize = false;                             B.Name = tabID.ToString();                         }                                             }                 }             }

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!