控件样式 1

控件名称:myRefueller

  public myRefueller [] RefuellerS { get; set; }
 /// <summary>/// 自定义控件加油机数量显示/// </summary>/// <param name="conut"></param>public void Control(List<OilEngine_OilGun> list){try{int qh = 1;int yj = 1;int nber = list.Count;//加油机数量//RefuellerS = new Control.Refueller1(nber);RefuellerS = new myRefueller[nber];//控件 if (nber > 7){for (int i = 0; i < 7; i++){myRefueller r1 = new myRefueller();r1.Name = "Jlj" + yj;r1.Font = new Font("宋体", 9, FontStyle.Regular); //宋体, 9pt;try{var getByWhere = db.Queryable<OilEngine_Oils>().Where(it => it.OilCode == list[i].OilCode).ToList();r1.lb_Oils.Text = getByWhere[0].OilName; //显示油品}catch (Exception){}r1.lb_Communication.Text = "通讯失败"; //通讯r1.lb_Communication.ForeColor = Color.Red;// Color.Lime; //通讯颜色r1.Size = new Size(253, 366);r1.Location = new Point(253 * i, 0);r1.Show();r1.panel1.Click += new EventHandler(r1_Click);skinTabPage3.Controls.Add(r1);RefuellerS[i] = r1;Console.WriteLine(r1.Name);}nber = nber - 7;if (nber > 0){for (int i = 0; i < nber; i++){myRefueller r1 = new myRefueller();r1.Name = "Jlj" + yj;r1.Font = new Font("宋体", 9, FontStyle.Regular); try{var getByWhere = db.Queryable<OilEngine_Oils>().Where(it => it.OilCode == list[7 + i].OilCode).ToList();r1.lb_Oils.Text = getByWhere[0].OilName; //显示油品}catch (Exception){}r1.lb_Communication.Text = "通讯失败"; //通讯r1.lb_Communication.ForeColor = Color.Red;// Color.Lime; //通讯颜色r1.Size = new Size(253, 366);r1.Location = new Point(253 * i, 366);r1.Show();r1.panel1.Click += new EventHandler(r1_Click);skinTabPage3.Controls.Add(r1);RefuellerS[i] = r1;Console.WriteLine(r1.Name);}}}else{for (int i = 0; i < nber; i++){myRefueller r1 = new myRefueller();r1.Name = "Jlj" + i;r1.Font = new Font("宋体", 9, FontStyle.Regular); try{var getByWhere = db.Queryable<OilEngine_Oils>().Where(it => it.OilCode == list[i].OilCode).ToList();r1.lb_Oils.Text = getByWhere[0].OilName; //显示油品}catch (Exception){}r1.lb_Communication.Text = "通讯失败"; //通讯r1.lb_Communication.ForeColor = Color.Red;// Color.Lime; //通讯颜色r1.Size = new Size(253, 366);r1.Location = new Point(253 * i, 0);r1.Show();r1.panel1.Click += new EventHandler(r1_Click);skinTabPage3.Controls.Add(r1);RefuellerS[i] = r1;Console.WriteLine(r1.Name);}}// TextShowClass.Log("加载自定控件!");}catch (Exception ex){MessageBox.Show(ex.Message);// TextShowClass.Log("加载自定控件!错误:" + ex.Message);}}
   #region  自定义控件防止闪烁protected override CreateParams CreateParams{get{var parms = base.CreateParams;parms.Style &= ~0x02000000;  // Turn off WS_CLIPCHILDRENreturn parms;}}#endregion
 /// <summary>/// 绑定 控件点击事件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void r1_Click(object sender, EventArgs e){try{// MessageBox.Show(((myRefueller)sender).panel1.Name);//控件名字}catch (Exception ex){Console.WriteLine(ex.Message);}}

效果图:

第二种   两种相同几乎

  private void r1_Click(object sender, EventArgs e){//Control.Refueller1 r1 = new Control.Refueller1();//(((Control.Refueller1)sender).Tag as TextBox).Text = ((Control.Refueller1)sender).Name;//MessageBox.Show(((Control.Refueller1)sender).Name);try{((Control.Refueller1)sender).panel1.BackgroundImage = Image.FromFile(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\Pcture\\yuandian (1).png");((Control.Refueller1)sender).panel2.BackgroundImage = Image.FromFile(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\Pcture\\yuandian.png");((Control.Refueller1)sender).panel3.BackgroundImage = Image.FromFile(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\Pcture\\yuandian2.png");((Control.Refueller1)sender).panel4.BackgroundImage = Image.FromFile(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\Pcture\\yuandian3.png");}catch (Exception ex){Console.WriteLine(ex.Message);}}
  public  Control.Refueller1 [] RefuellerS { get; set; }/// <summary>/// 加油机控件/// /// </summary>public void Control(){try{int qh = 1;int yj = 1;int nber = Convert.ToInt32(Config.OilNumber);//RefuellerS = new Control.Refueller1(nber);RefuellerS = new Control.Refueller1[nber];if (nber > 9){for (int i = 0; i < 8; i++){Control.Refueller1 r1 = new Control.Refueller1();r1.Name = "Jlj" + yj;r1.label5.Text = yj++.ToString();if (Convert.ToUInt32(Config.Oil(yj)) <= 2){r1.label3.Visible = false;r1.label4.Visible = false;r1.panel3.Visible = false;r1.panel4.Visible = false;r1.label1.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label2.Text = Convert.ToString(qh++).PadLeft(2, '0');}else{r1.label1.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label3.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label2.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label4.Text = Convert.ToString(qh++).PadLeft(2, '0');}r1.Size = new Size(220, 281);r1.Location = new Point(220 * i, 0);r1.Show();r1.Click += new EventHandler(r1_Click);splitContainer1.Panel1.Controls.Add(r1);RefuellerS[i]= r1;Console.WriteLine(r1.Name);}nber = nber - 8;if (nber > 0){for (int i = 0; i < nber; i++){Control.Refueller1 r1 = new Control.Refueller1();r1.Name = "Jlj" + yj;r1.label5.Text = yj++.ToString();if (Convert.ToUInt32(Config.Oil(yj)) <= 2){r1.label3.Visible = false;r1.label4.Visible = false;r1.panel3.Visible = false;r1.panel4.Visible = false;r1.label1.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label2.Text = Convert.ToString(qh++).PadLeft(2, '0');}else{r1.label1.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label3.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label2.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label4.Text = Convert.ToString(qh++).PadLeft(2, '0');}r1.Size = new Size(220, 281);r1.Location = new Point(220 * i, 281);r1.Show();r1.Click += new EventHandler(r1_Click);splitContainer1.Panel1.Controls.Add(r1);RefuellerS[i] = r1;Console.WriteLine(r1.Name);}}}else{for (int i = 0; i < nber; i++){Control.Refueller1 r1 = new Control.Refueller1();r1.Name = "Jlj" + yj;r1.label5.Text = yj++.ToString();if (Convert.ToUInt32(Config.Oil(yj)) <= 2){r1.label3.Visible = false;r1.label4.Visible = false;r1.panel3.Visible = false;r1.panel4.Visible = false;r1.label1.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label2.Text = Convert.ToString(qh++).PadLeft(2, '0');}else{r1.label1.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label3.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label2.Text = Convert.ToString(qh++).PadLeft(2, '0');r1.label4.Text = Convert.ToString(qh++).PadLeft(2, '0');}r1.Size = new Size(220, 281);r1.Location = new Point(220 * i, 0);r1.Show();r1.Click += new EventHandler(r1_Click);splitContainer1.Panel1.Controls.Add(r1);RefuellerS[i] = r1;Console.WriteLine(r1.Name);}}TextShowClass.Log("加载自定控件!");}catch (Exception ex){MessageBox.Show(ex.Message);TextShowClass.Log("加载自定控件!错误:"+ ex.Message);}}

C# winform 自定义控件配置代码 多显示 换行相关推荐

  1. 解决vscode格式化代码html属性换行问题; ctrl+s格式化去除分号,格式化自动单引号;解决js格式化换行问题;mac上的settings.json完整配置

    右键格式化文档或者ctrl + s保存 html不换行 1.安装两个插件①vetur ②Prettier - Code formatter 2.在vetur的settings.json中设置 配置ct ...

  2. (一)c#Winform自定义控件-基类控件-HZHControls

    官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kww ...

  3. (三十二)c#Winform自定义控件-表格

    前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:ht ...

  4. C# WINFORM 中 多行TEXTBOX的换行

    原文地址为: C# WINFORM 中 多行TEXTBOX的换行 要让一个Windows Form的 TextBox显示多行文本就得把它的Multiline属性设置为true. 这个大家都知道,可是当 ...

  5. Vue+Openlayers+el-checkbox实现多选配置图层的显示和隐藏

    场景 Vue+Openlayers实现地图上绘制线: Vue+Openlayers实现地图上绘制线_BADAO_LIUMANG_QIZHI的博客-CSDN博客 在上面实现加载多个图层的基础上,可以实现 ...

  6. (winform)在一个form里面显示google地图

    一个windows form,里面显示google地图,可以放大,缩小,拖动操作,最好有代码例子!对webbrowser控件的使用不是很熟练. 回复:(winform)在一个form里面显示googl ...

  7. thinkphp 关联模型配置代码

    原文:thinkphp 关联模型配置代码 <?php /*** 公司与部门关联模型*/ class CompanyRelationModel extends RelationModel{//主表 ...

  8. [WPF自定义控件库] 自定义控件的代码如何与ControlTemplate交互

    [WPF自定义控件库] 自定义控件的代码如何与ControlTemplate交互 原文:[WPF自定义控件库] 自定义控件的代码如何与ControlTemplate交互 1. 前言 WPF有一个灵活的 ...

  9. 微信php echo换行,微信小程序文字显示换行问题

    微信小程序文字显示换行问题 小程序文字显示换行 问题 用户在上传图文时,输入换行符.导致我在拿到数据后JSON.parse的时候报错. 大概这样的结构: [{ text:'落魄前端 在线炒粉!!!' ...

  10. 007 - 配置 Clion 调试显示 Qt 变量

    配置 Clion 调试显示 Qt 变量 文章目录 配置 Clion 调试显示 Qt 变量 引言 尝试解决 配置 Lekensteyn's qt5printers KDevelop formatters ...

最新文章

  1. 软件测试培训:如何搭建测试环境
  2. 《Adobe After Effects CC经典教程》——导读
  3. 我把SpringBoot项目从18.18M瘦身到0.18M,部署起来真省事!
  4. NodeJs:用 nodejs + edge + ejs + c#,打造属于自己的代码生成器
  5. python搜题软件-智慧职教mooc的APPPython程序设计基础章节测验答案
  6. MyBatis】MyBatis一级缓存和二级缓存
  7. 我国共招过多少博士?多少硕士?数据来了!
  8. java 调用wget_通过命令行执行WGET下载会更快,而通过Java代码执行时会更慢
  9. idea 填充变量类型_填充IntelliJ IDEA项目
  10. 数据结构上机实践第14周项目2 - 二叉树排序树中查找的路径
  11. 2018年香港访港旅客超6500万人次 创16年新高
  12. 云计算将成电子政务最大亮点
  13. 《大型多人在线游戏开发》读书笔记
  14. TensorFlow-gpu安装和测试(TensorFlow-gpu1.14+Cuda10)
  15. android数据格式化,手机格式化了?教你找回安卓手机数据
  16. 关于我在刷题时用OJ判题发现的cout相较于printf严重超时的问题
  17. Cookie--防劫持的处理
  18. java 邮件收发_java中javamail收发邮件实现方法
  19. Vue 中使用 axios 传输数据,当数据量过大时会提示跨域?(√已解决)
  20. 微型计算机接口技术论文,(微机原理与接口技术课程论文.doc

热门文章

  1. 工程力学(1)-公理以及简单的受力分析
  2. R语言学习笔记(二)——回归分析
  3. 不多不少,大学里必做的五件事(从我的大一说起)
  4. 事业单位招聘计算机岗位考试题,计算机考试题库:计算机考试练习题(136)
  5. cmd中mysql的操作语句_cmd命令行数据库操作语句
  6. HSL、RGB颜色转换
  7. Python使用进程池管理进程和进程间通信
  8. 360路由器远程连接服务器,360路由器如何开启端口映射?
  9. 艾永亮:酒瓶中的战争,谁是下一瓶被拿起的葡萄酒
  10. uni-app设置背景图片,backgroundImage