winform PictureBox图片上动态添加Label或其他控件
效果图:
代码:
//分页或者多次加载时,需要删除之前产生的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或其他控件的更多相关文章
- (转载)VC/MFC 工具栏上动态添加组合框等控件的方法
引言 工具条作为大多数标准的Windows应用程序的 一个重要组成部分,使其成为促进人机界面友好的一个重要工具.通过工具条极大方便了用户对程序的操作,但是在由Microsoft Visual C++开 ...
- VC/MFC 工具栏上动态添加组合框等控件的方法
引言 工具条作为大多数标准的Windows应用程序的一个重要组成部分,使其成为促进人机界面友好的一个重要工具.通过工具条极大方便了用户对程序的操作,但是在由Microsoft Visual C++开发 ...
- Android 在程序中动态添加 View 布局或控件
有时我们需要在程序中动态添加布局或控件等,下面用程序来展示一下相应的方法: 1.addView 添加View到布局容器 2.removeView 在布局容器中删掉已有的View 3.LayoutPar ...
- asp.net 动态添加多个用户控件
动态添加多个相同用户控件,并使每个用户控件获取不同的内容. 用户控件代码: 代码WebControls using System; using System.Collections.Generic; ...
- C#实现在图片上动态写内容
之前在项目上遇到这么一个需求,就是要在图片上写内容,而且要求是动态,我所谓的动态就是在图片上写的内容是动态的.网上找了找,很多人实现了网图片上写内容的功能,但是,并没有实现动态.所以在这里把我的解决办 ...
- winform窗体传值和动态添加控件
1.跳转窗体时传值 //将要显示的页面实例化 RoleMenuForm rmf = new RoleMenuForm(); try { //在此给RoleMenuForm 窗体中的变量roleId传值 ...
- vue组件上动态添加和删除属性
1.vue组件上动态添加和删除属性 // 添加 this.$set(this.obj, 'propName', val) // 删除 this.$delete(this.obj, 'propName' ...
- m_Orchestrate learning system---二十六、动态给封装好的控件添加属性
m_Orchestrate learning system---二十六.动态给封装好的控件添加属性 一.总结 一句话总结:比如我现在封装好了ueditor控件,我外部调用这个控件,因为要写数据到数据库 ...
- ASP.NET#在设计窗口上添加了一个SqlDataSource控件后,没有显示出来?
在设计窗口上添加了一个SqlDataSource控件后,没有显示出来,但后台代码是有的 处理的办法:菜单栏->视图->可视辅助->ASP.NET非可视控件 (我用的是VS2012)
随机推荐
- python socketpool:通用连接池
简介 在软件开发中经常要管理各种“连接”资源,通常我们会使用对应的连接池来管理,比如mysql数据库连接可以用sqlalchemy中的池来管理,thrift连接可以通过thriftpool管理,red ...
- LiquiBase实战总结
LiquiBase概述 Liquibase是一个用于跟踪.管理和应用数据库变化的开源的数据库重构工具.它将所有数据库的变化(包括结构和数据)都保存在XML文件中,便于版本控制. Liquibase具备 ...
- PorterDuffXfermode之PorterDuff.Mode.LIGHTEN
package com.loaderman.customviewdemo.view; import android.content.Context; import android.graphics.B ...
- thymeleaf动态拼接class
场景:站内消息,一些已读的要区别与未读的. <table class="layui-table"> <thead> <tr> <th la ...
- Js 实现局部打印功能
1.当前页面 var bodyHtml = window.document.body.innerHTML; window.document.body.innerHTML = printHtml;//p ...
- css3 animation 点亮灯光效果
<style> .wrap .bulb { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50% ...
- iOS-UILabel的使用
常用属性UILabel //显示的文字 @property(nonatomic,copy) NSString *text; //字体 @property(nonatomic, ...
- linux中安装docker
uname -r yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ ...
- Egret入门学习日记 --- 第三篇 (书中 3.4 内容)
第三篇 (书中 3.4 内容) 今天还是要把昨天项目运行后,EXML文件里的界面没有出现的问题解决了才行. 去了群里,没人回.去了官网看文档,看不懂. 不过倒是看到了一个好东西: 还挺便宜啊,一个月要 ...
- 【数据库开发】Redis数据库服务器启动配置
Redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sor ...