效果图:

代码:

 //分页或者多次加载时,需要删除之前产生的lable等控件
   for (int tabID = ; tabID < ; 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 - )
{
for (int i = tabID; i < ; 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 = -;
}
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 = ;
C.Text = list[tabID].VehicleNumber;
C.Font = new Font("", );
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 = ;
B.Text = list[tabID].VehicleZT;
B.Font = new Font("", );
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();
}
}
}
}

winform PictureBox图片上动态添加Label或其他控件的更多相关文章

  1. (转载)VC/MFC 工具栏上动态添加组合框等控件的方法

    引言 工具条作为大多数标准的Windows应用程序的 一个重要组成部分,使其成为促进人机界面友好的一个重要工具.通过工具条极大方便了用户对程序的操作,但是在由Microsoft Visual C++开 ...

  2. VC/MFC 工具栏上动态添加组合框等控件的方法

    引言 工具条作为大多数标准的Windows应用程序的一个重要组成部分,使其成为促进人机界面友好的一个重要工具.通过工具条极大方便了用户对程序的操作,但是在由Microsoft Visual C++开发 ...

  3. Android 在程序中动态添加 View 布局或控件

    有时我们需要在程序中动态添加布局或控件等,下面用程序来展示一下相应的方法: 1.addView 添加View到布局容器 2.removeView 在布局容器中删掉已有的View 3.LayoutPar ...

  4. asp.net 动态添加多个用户控件

    动态添加多个相同用户控件,并使每个用户控件获取不同的内容. 用户控件代码: 代码WebControls using System; using System.Collections.Generic;  ...

  5. C#实现在图片上动态写内容

    之前在项目上遇到这么一个需求,就是要在图片上写内容,而且要求是动态,我所谓的动态就是在图片上写的内容是动态的.网上找了找,很多人实现了网图片上写内容的功能,但是,并没有实现动态.所以在这里把我的解决办 ...

  6. winform窗体传值和动态添加控件

    1.跳转窗体时传值 //将要显示的页面实例化 RoleMenuForm rmf = new RoleMenuForm(); try { //在此给RoleMenuForm 窗体中的变量roleId传值 ...

  7. vue组件上动态添加和删除属性

    1.vue组件上动态添加和删除属性 // 添加 this.$set(this.obj, 'propName', val) // 删除 this.$delete(this.obj, 'propName' ...

  8. m_Orchestrate learning system---二十六、动态给封装好的控件添加属性

    m_Orchestrate learning system---二十六.动态给封装好的控件添加属性 一.总结 一句话总结:比如我现在封装好了ueditor控件,我外部调用这个控件,因为要写数据到数据库 ...

  9. ASP.NET#在设计窗口上添加了一个SqlDataSource控件后,没有显示出来?

    在设计窗口上添加了一个SqlDataSource控件后,没有显示出来,但后台代码是有的 处理的办法:菜单栏->视图->可视辅助->ASP.NET非可视控件 (我用的是VS2012)

随机推荐

  1. Linux CentOS 7 常用命令集合

  2. JS-数组与伪数组

    数组与伪数组 把符合以下条件的对象称为伪数组: 具有length属性 按索引方式存储数据 不具有数组的push,pop等方法 伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行 ...

  3. Ionic4.x 中的 UI 组件(UI Components)表单相关组件

    1.ion-input 单行文本框 2.ion-toggle 开关 3.ion-radio-group.ion-radio 单选按钮组 4.ion-checkbox 多选按钮组 5.ion-selec ...

  4. ubuntu下编译和使用libxml2

    安装: #sudo apt-get install libxml2 #sudo apt-get install libxml2-dev sudo apt-get install libxml2-dev ...

  5. proj-6.1.1 编译

    Requiring C++11 Requiring C++11 - done Configuring PROJ: PROJ_VERSION = 6.1.1 PROJ_ABI_VERSION = 6_1 ...

  6. 阶段5 3.微服务项目【学成在线】_day18 用户授权_14-细粒度授权-我的课程细粒度授权-需求分析

    3.3 我的课程细粒度授权 3.3.1 需求分析 1.我的课程查询,细粒度授权过程如下: 1)获取当前登录的用户Id 2)得到用户所属教育机构的Id 3)查询该教学机构下的课程信息 最终实现了用户只允 ...

  7. 算法习题---4-1象棋(UVa1589)

    一:题目 在黑方只有一个“将”的情况下,红方只有(车.马.炮)(可以多个).帅的情况下,判断黑方是否被将死 (一)题目详解 其中棋盘按照坐标方式表示,左上角为(,),列数最大9,行数最大10 G 表示 ...

  8. QML访问C++类内部

    0.前提 C++类需要继承QObject,且有Q_OBJECT宏[所以QT自己的那么多类按道理上QML都是可以直接访问的,nb] 1.QML访问C++中的非private槽函数 可直接调用 信号也是 ...

  9. LeetCode_190. Reverse Bits

    190. Reverse Bits Easy Reverse bits of a given 32 bits unsigned integer. Example 1: Input: 000000101 ...

  10. PHP重建数组的索引

    sort() array_merge()跟一个空数组合并都可以重建索引数组的键(key)