Files
Inspection/JinYuan.ControlLib/ArrTotalQty.cs
T

145 lines
5.8 KiB
C#
Raw Normal View History

2026-09-09 19:21:21 +08:00
using JinYuan.Models;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace JinYuan.ControlLib
{
public partial class ArrTotalQty : UserControl
{
public ArrTotalQty()
{
InitializeComponent();
//设置控件样式,去除缓冲
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.DoubleBuffer, true);
this.SetStyle(ControlStyles.ResizeRedraw, true);
this.SetStyle(ControlStyles.Selectable, true);
this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);
// UpData();
}
//#region 减少闪烁
//protected override CreateParams CreateParams
//{
// get
// {
// CreateParams cp = base.CreateParams;
// cp.ExStyle |= 0x02000000;
// return cp;
// }
//}
//#endregion
private int _MaxValue = 999999;
private int totalValue = 0;
[Browsable(true)]//是否可见
[Category("自定义属性")] //类别
[Description("设置或显示数字值:(最大值999999)")]
public int TotalValue
{
get { return totalValue; }
set
{
if (value > _MaxValue) return;
totalValue = value;
SetElectricEnergy(totalValue);
}
}
private void SetElectricEnergy(int value)
{
if (totalValue.ToString().Length < 7)
{
bool isNumeric = Regex.IsMatch(totalValue.ToString(), @"^\d+$");
if (isNumeric)
{
List<int> numbers = new List<int>();
foreach (char c in totalValue.ToString())
{
if (char.IsDigit(c))
{
int number = int.Parse(c.ToString());
numbers.Add(number);
}
}
for (int i = 1; i < numbers.Count + 1; i++)
{
switch (numbers.Count)
{
case 1:
this.lbl_Title1.TitleName = 0.ToString();
this.lbl_Title2.TitleName = 0.ToString();
this.lbl_Title3.TitleName = 0.ToString();
this.lbl_Title4.TitleName = 0.ToString();
this.lbl_Title5.TitleName = 0.ToString();
this.lbl_Title6.TitleName = numbers[0].ToString();
break;
case 2:
this.lbl_Title1.TitleName = 0.ToString();
this.lbl_Title2.TitleName = 0.ToString();
this.lbl_Title3.TitleName = 0.ToString();
this.lbl_Title4.TitleName = 0.ToString();
this.lbl_Title5.TitleName = numbers[0].ToString();
this.lbl_Title6.TitleName = numbers[1].ToString();
break;
case 3:
this.lbl_Title1.TitleName = 0.ToString();
this.lbl_Title2.TitleName = 0.ToString();
this.lbl_Title3.TitleName = 0.ToString();
this.lbl_Title4.TitleName = numbers[0].ToString();
this.lbl_Title5.TitleName = numbers[1].ToString();
this.lbl_Title6.TitleName = numbers[2].ToString();
break;
case 4:
this.lbl_Title1.TitleName = 0.ToString();
this.lbl_Title2.TitleName = 0.ToString();
this.lbl_Title3.TitleName = numbers[0].ToString();
this.lbl_Title4.TitleName = numbers[1].ToString();
this.lbl_Title5.TitleName = numbers[2].ToString();
this.lbl_Title6.TitleName = numbers[3].ToString();
break;
case 5:
this.lbl_Title1.TitleName = 0.ToString();
this.lbl_Title2.TitleName = numbers[0].ToString();
this.lbl_Title3.TitleName = numbers[1].ToString();
this.lbl_Title4.TitleName = numbers[2].ToString();
this.lbl_Title5.TitleName = numbers[3].ToString();
this.lbl_Title6.TitleName = numbers[4].ToString();
break;
case 6:
this.lbl_Title1.TitleName = numbers[0].ToString();
this.lbl_Title2.TitleName = numbers[1].ToString();
this.lbl_Title3.TitleName = numbers[2].ToString();
this.lbl_Title4.TitleName = numbers[3].ToString();
this.lbl_Title5.TitleName = numbers[4].ToString();
this.lbl_Title6.TitleName = numbers[5].ToString();
break;
default:
break;
}
}
}
}
}
}
}