初始化提交

This commit is contained in:
lq
2026-09-09 18:42:38 +08:00
commit 40a6cb3baf
2461 changed files with 2778202 additions and 0 deletions
File diff suppressed because one or more lines are too long
+112
View File
@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<!--Sqlserver数据库的连接字符串-->
<add name="sqlserver" providerName="System.Data.SqlClient" connectionString="Server=localhost;Database=HBG_AnodeTophatWeld;Uid=jyzdh;Pwd=eve123456" />
<!--MySQL数据库的连接字符串-->
<add name="mysql" providerName="MySql.Data.MySqlClient" connectionString="Server=localhost;DataBase=LargeSquareOne;User Id=root;Password=eve123456;Persist Security Info=true;Allow Zero Datetime=true;Character Set=utf8;" />
<!--MySQL2数据库的连接字符串-->
<add name="mysql2" providerName="MySql.Data.MySqlClient" connectionString="Server=10.61.135.101;DataBase=hbg_cupdataturnover;User Id=root;Password=eve123456;Persist Security Info=true;Allow Zero Datetime=true;Character Set=utf8;" />
<!--MySQL3数据库的连接字符串-->
<add name="mysql3" providerName="MySql.Data.MySqlClient" connectionString="Server=10.61.135.101;DataBase=hbg_cupdataturnover;User Id=root;Password=eve123456;Persist Security Info=true;Allow Zero Datetime=true;Character Set=utf8;" />
<!--sqlite数据库字符串,路径符号|DataDirectory|代表当前运行目录-->
<add name="sqlite" providerName="System.Data.SQLite" connectionString="Data Source=|DataDirectory|\WinFramework.db;Version=3;" />
<!--PostgreSQL数据库的连接字符串-->
<add name="npgsql" providerName="Npgsql" connectionString="Server=localhost;Port=5432;Database=winframework;User Id=postgres;Password=123456" />
<!--不受驱动影响,32位64位均可使用-->
<add name="oracle" providerName="OracleManaged" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));User ID=win;Password=win" />
<!--达梦数据库的连接字符串-->
<add name="Dm" providerName="Dm" connectionString="Server=localhost;User ID=SYSDBA;PWD=SYSDBA;Database=WINFRAMEWORK;" />
</connectionStrings>
<appSettings>
<!--指定默认的数据库类型,如果不指定则使用第一个连接字符串-->
<add key="DefaultDb" value="MySql" />
<!--指定默认的语言-->
<add key="PreferredLanguage" value="zh" />
<add key="ClientSettingsProvider.ServiceUri" value="" />
</appSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="OxyPlot" publicKeyToken="638079a8f0bd61e9" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.1.2.0" newVersion="2.1.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.1.0.0" newVersion="9.1.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Google.Protobuf" publicKeyToken="a7d26565bac4d604" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.23.4.0" newVersion="3.23.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="ZstdSharp" publicKeyToken="8d151af33a4ad5cf" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-0.7.2.0" newVersion="0.7.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Text.Encoding.CodePages" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Configuration.ConfigurationManager" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Cryptography.Xml" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.1" newVersion="6.0.0.1" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>
</system.web>
</configuration>
Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 334 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 384 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

+195
View File
@@ -0,0 +1,195 @@
namespace LargeSquareOne
{
partial class CommunicationEditForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
this.panelExt1 = new JinYuan.ControlLib.PanelExt();
this.groupTable = new System.Windows.Forms.DataGridView();
this.topPanel = new System.Windows.Forms.Panel();
this.BtnAdd = new System.Windows.Forms.Button();
this.btn_Close = new System.Windows.Forms.Button();
this.lblTitle = new System.Windows.Forms.Label();
this.panelExt1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.groupTable)).BeginInit();
this.topPanel.SuspendLayout();
this.SuspendLayout();
//
// panelExt1
//
this.panelExt1.BackColor = System.Drawing.Color.Transparent;
this.panelExt1.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(32)))), ((int)(((byte)(79)))), ((int)(((byte)(150)))));
this.panelExt1.BordeWidth = 2;
this.panelExt1.BottomGap = 0;
this.panelExt1.Controls.Add(this.groupTable);
this.panelExt1.Controls.Add(this.topPanel);
this.panelExt1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelExt1.LeftGap = 0;
this.panelExt1.Location = new System.Drawing.Point(0, 0);
this.panelExt1.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.panelExt1.Name = "panelExt1";
this.panelExt1.RightGap = 0;
this.panelExt1.Size = new System.Drawing.Size(1237, 636);
this.panelExt1.TabIndex = 0;
this.panelExt1.TopGap = 0;
//
// groupTable
//
this.groupTable.AllowUserToAddRows = false;
this.groupTable.AllowUserToDeleteRows = false;
this.groupTable.AllowUserToResizeRows = false;
this.groupTable.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.groupTable.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.groupTable.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.groupTable.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.groupTable.ColumnHeadersHeight = 45;
this.groupTable.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.groupTable.DefaultCellStyle = dataGridViewCellStyle2;
this.groupTable.EnableHeadersVisualStyles = false;
this.groupTable.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.groupTable.Location = new System.Drawing.Point(19, 55);
this.groupTable.Name = "groupTable";
this.groupTable.ReadOnly = true;
this.groupTable.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.groupTable.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.groupTable.RowHeadersVisible = false;
this.groupTable.RowHeadersWidth = 55;
this.groupTable.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
this.groupTable.RowTemplate.Height = 40;
this.groupTable.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.groupTable.Size = new System.Drawing.Size(1202, 560);
this.groupTable.TabIndex = 15;
//
// topPanel
//
this.topPanel.Controls.Add(this.BtnAdd);
this.topPanel.Controls.Add(this.btn_Close);
this.topPanel.Controls.Add(this.lblTitle);
this.topPanel.Dock = System.Windows.Forms.DockStyle.Top;
this.topPanel.Location = new System.Drawing.Point(0, 0);
this.topPanel.Name = "topPanel";
this.topPanel.Size = new System.Drawing.Size(1237, 49);
this.topPanel.TabIndex = 0;
this.topPanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.topPanel.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// BtnAdd
//
this.BtnAdd.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.BtnAdd.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.BtnAdd.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.BtnAdd.ForeColor = System.Drawing.Color.White;
this.BtnAdd.Location = new System.Drawing.Point(996, 7);
this.BtnAdd.Name = "BtnAdd";
this.BtnAdd.Size = new System.Drawing.Size(105, 36);
this.BtnAdd.TabIndex = 49;
this.BtnAdd.Text = "添加通信组";
this.BtnAdd.UseVisualStyleBackColor = false;
this.BtnAdd.Click += new System.EventHandler(this.BtnAdd_Click);
//
// btn_Close
//
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(29)))), ((int)(((byte)(84)))));
this.btn_Close.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 15.5F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(1189, 7);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 1;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = true;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// lblTitle
//
this.lblTitle.AutoSize = true;
this.lblTitle.ForeColor = System.Drawing.Color.White;
this.lblTitle.Location = new System.Drawing.Point(15, 18);
this.lblTitle.Name = "lblTitle";
this.lblTitle.Size = new System.Drawing.Size(90, 21);
this.lblTitle.TabIndex = 0;
this.lblTitle.Text = "通信组配置";
//
// CommunicationEditForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(1237, 636);
this.Controls.Add(this.panelExt1);
this.Font = new System.Drawing.Font("微软雅黑", 12F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.Name = "CommunicationEditForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmGroupConfig";
this.panelExt1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.groupTable)).EndInit();
this.topPanel.ResumeLayout(false);
this.topPanel.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private JinYuan.ControlLib.PanelExt panelExt1;
private System.Windows.Forms.Panel topPanel;
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.Label lblTitle;
private System.Windows.Forms.DataGridView groupTable;
private System.Windows.Forms.Button BtnAdd;
}
}
+722
View File
@@ -0,0 +1,722 @@
using JinYuan.Helper;
using JinYuan.Models;
using Language;
using MiniExcelLibs;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using System.Windows.Forms;
using System.Xml.Schema;
namespace LargeSquareOne
{
public partial class CommunicationEditForm : MultiLanguageForm
{
private string groupPath = Application.StartupPath + "\\Config\\Group.xlsx";
private List<PlcGroupConfig> TotalGroups = new List<PlcGroupConfig>();
private PlcGroupConfig editingConfig;
private int PlcNum;
public CommunicationEditForm(int plcNum)
{
PlcNum = plcNum;
InitializeComponent();
this.groupTable.AutoGenerateColumns = false;
InitializeDataGridView();
TotalGroups = GetALLGroups();
LoadGroups();
}
/// <summary>
/// 初始化DataGridView
/// </summary>
private void InitializeDataGridView()
{
groupTable.AutoGenerateColumns = false;
groupTable.AllowUserToAddRows = false;
groupTable.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
groupTable.MultiSelect = false;
groupTable.ReadOnly = false;
// 添加列
groupTable.Columns.AddRange(new DataGridViewColumn[]
{
new DataGridViewTextBoxColumn
{
Name = "PlcNum",
HeaderText = "PLC编号",
Width = 120,
ReadOnly = true,
DataPropertyName = "PlcNum",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewTextBoxColumn
{
Name = "GroupName",
HeaderText = "组名",
Width = 120,
DataPropertyName = "GroupName",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewTextBoxColumn
{
Name = "Start",
HeaderText = "起始地址",
Width = 150,
DataPropertyName = "Start",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewTextBoxColumn
{
Name = "Length",
HeaderText = "长度",
Width = 120,
DataPropertyName = "Length",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewCheckBoxColumn
{
Name = "IsTiggerRead",
HeaderText = "触发读取",
Width = 150,
DataPropertyName = "IsTiggerRead",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewCheckBoxColumn
{
Name = "IsFeedbackPlc",
HeaderText = "反馈PLC",
Width = 150,
DataPropertyName = "IsFeedbackPlc",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewCheckBoxColumn
{
Name = "IsActive",
HeaderText = "是否启用",
Width = 150,
DataPropertyName = "IsActive",
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewTextBoxColumn
{
Name = "Remark",
HeaderText = "备注",
Width = 150,
DataPropertyName = "Remark",
Visible=false,
DefaultCellStyle = new DataGridViewCellStyle(){Alignment=DataGridViewContentAlignment.MiddleCenter},
},
new DataGridViewButtonColumn
{
Name = "Edit",
HeaderText = "操作",
Width = 100,
Text = "修改".Translated(),
UseColumnTextForButtonValue = true
},
new DataGridViewButtonColumn
{
Name = "Delete",
HeaderText = "",
Width = 100,
Text = "删除".Translated(),
UseColumnTextForButtonValue = true
}
});
// 添加事件处理
groupTable.CellBeginEdit += DataGridView_CellBeginEdit;
groupTable.CellEndEdit += DataGridView_CellEndEdit;
groupTable.CellContentClick += DataGridView_CellContentClick;
}
/// <summary>
/// 加载数据到表格
/// </summary>
private void LoadGroups()
{
var plcGroups = TotalGroups.Where(g => g.PlcNum == PlcNum).ToList();
groupTable.DataSource = null;
groupTable.DataSource = plcGroups;
}
/// <summary>
/// 获取所有通信组
/// </summary>
/// <returns></returns>
private List<PlcGroupConfig> GetALLGroups()
{
try
{
return MiniExcel.Query<PlcGroupConfig>(groupPath).ToList();
}
catch (Exception)
{
return new List<PlcGroupConfig>();
}
}
/// <summary>
/// 单元格开始编辑
/// </summary>
private void DataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
{
if (e.RowIndex < 0) return;
editingConfig = TotalGroups[e.RowIndex];
// 禁止编辑PLC编号和组名列
if (groupTable.Columns[e.ColumnIndex].Name == "PlcNum")
{
e.Cancel = true;
}
}
/// <summary>
/// 单元格结束编辑
/// </summary>
private void DataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0 || e.RowIndex >= TotalGroups.Count) return;
var config = TotalGroups[e.RowIndex];
var value = groupTable[e.ColumnIndex, e.RowIndex].Value;
try
{
UpdateConfigValue(config, e.ColumnIndex, value);
}
catch (Exception ex)
{
ShowError($"更新数据失败: {ex.Message}");
}
}
/// <summary>
/// 更新配置值
/// </summary>
private void UpdateConfigValue(PlcGroupConfig config, int columnIndex, object value)
{
switch (groupTable.Columns[columnIndex].Name)
{
case "GroupName":
if (string.IsNullOrWhiteSpace(value?.ToString()))
{
throw new Exception("组名不能为空".Translated());
}
config.GroupName = value.ToString();
break;
case "Start":
if (!ValidateAddressFormat(value?.ToString()))
{
throw new Exception("起始地址格式不正确".Translated());
}
config.Start = value.ToString();
break;
case "Length":
if (!int.TryParse(value?.ToString(), out int length) || length <= 0)
{
throw new Exception("长度必须是大于0的数字".Translated());
}
config.Length = length;
break;
case "IsTiggerRead":
config.IsTiggerRead = value != null && (bool)value;
break;
case "IsFeedbackPlc":
config.IsFeedbackPlc = value != null && (bool)value;
break;
case "IsActive":
config.IsActive = value != null && (bool)value;
break;
case "Remark":
config.Remark = value?.ToString() ?? string.Empty;
break;
}
}
/// <summary>
/// 单元格点击事件
/// </summary>
private void DataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0) return;
// 获取当前行显示的数据
var currentRow = groupTable.Rows[e.RowIndex];
var config = (PlcGroupConfig)currentRow.DataBoundItem;
// 找到在 TotalGroups 中的真实索引
var realIndex = TotalGroups.FindIndex(g =>
g.PlcNum == config.PlcNum &&
g.GroupName == config.GroupName &&
g.Start == config.Start);
// 编辑按钮
if (groupTable.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
groupTable.Columns[e.ColumnIndex].Name == "Edit")
{
// 传递真实的索引,而不是显示的行索引
HandleEdit(config, realIndex);
}
// 删除按钮
else if (groupTable.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
groupTable.Columns[e.ColumnIndex].Name == "Delete")
{
HandleDelete(config);
}
}
/// <summary>
/// 处理编辑操作
/// </summary>
private void HandleEdit(PlcGroupConfig config, int rowIndex)
{
try
{
var result = MessageBox.Show("是否保存修改的配置?".Translated(), "确认保存".Translated(), MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result != DialogResult.Yes) return;
if (!ValidateConfigAll(config)) return;
// 更新TotalGroups中的配置
TotalGroups[rowIndex] = config;
// 保存到Excel
SaveToExcel(TotalGroups);
// 重新加载显示
LoadGroups();
ShowSuccess("配置保存成功".Translated());
}
catch (Exception ex)
{
ShowError($"保存失败: {ex.Message}");
}
}
/// <summary>
/// 处理删除操作
/// </summary>
private void HandleDelete(PlcGroupConfig config)
{
var result = MessageBox.Show($"确定要删除该通信组吗?\n PLC编号[{config.PlcNum}] 组名: [{config.GroupName}]", "确认删除", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes)
{
try
{
TotalGroups.Remove(config);
SaveToExcel(TotalGroups);
LoadGroups();
ShowSuccess("删除成功".Translated());
}
catch (Exception ex)
{
ShowError($"删除失败: {ex.Message}");
}
}
}
/// <summary>
/// 保存配置到Excel文件
/// </summary>
private void SaveToExcel(List<PlcGroupConfig> configs)
{
try
{
// 创建临时文件路径
string tempFilePath = Path.Combine(
Path.GetDirectoryName(groupPath),
$"temp_{Path.GetFileName(groupPath)}");
// 先保存到临时文件
MiniExcel.SaveAs(tempFilePath, configs);
// 检查临时文件是否创建成功
if (!File.Exists(tempFilePath))
{
throw new Exception("创建临时文件失败".Translated());
}
try
{
// 如果原文件存在,先删除
if (File.Exists(groupPath))
{
File.Delete(groupPath);
}
// 将临时文件重命名为目标文件
File.Move(tempFilePath, groupPath);
}
finally
{
// 确保临时文件被删除
if (File.Exists(tempFilePath))
{
File.Delete(tempFilePath);
}
}
}
catch (Exception ex)
{
throw new Exception($"保存Excel文件时发生错误: {ex.Message}", ex);
}
}
/// <summary>
/// 验证单行配置
/// </summary>
private bool ValidateConfigAll(PlcGroupConfig config)
{
try
{
// 基本字段验证
if (string.IsNullOrWhiteSpace(config.GroupName))
{
ShowError("组名不能为空".Translated());
return false;
}
if (string.IsNullOrWhiteSpace(config.Start))
{
ShowError("起始地址不能为空".Translated());
return false;
}
if (config.Length <= 0)
{
ShowError("长度必须大于0".Translated());
return false;
}
// 地址格式验证
if (!ValidateAddressFormat(config.Start))
{
ShowError("起始地址格式不正确,应以'D'开头后跟数字".Translated());
return false;
}
// 打印调试信息
Console.WriteLine($"当前要添加的配置 - PLC号: {config.PlcNum}, 组名: {config.GroupName}");
//// 打印所有的配置
//Console.WriteLine("\n所有配置信息:");
//foreach (var g in TotalGroups)
//{
// Console.WriteLine($"PLC号: {g.PlcNum}, 组名: {g.GroupName}");
//}
// 筛选同PLC的配置(不包括当前正在添加的配置)
var groupsInSamePLC = TotalGroups.Where(g =>
g.PlcNum == config.PlcNum && // 筛选 PLC1 的配置
g != config // 这个条件是需要的,因为可能当前配置已经在集合中
).ToList();
// 3. 只在同一个PLC内检查地址是否冲突
if (groupsInSamePLC.Any(g => g.GroupName.Equals(config.GroupName, StringComparison.OrdinalIgnoreCase)))
{
ShowError($"在PLC {config.PlcNum} 中,组名 {config.GroupName} 已被使用");
return false;
}
//Console.WriteLine("\n筛选后的配置:");
//foreach (var g in groupsInSamePLC)
//{
// Console.WriteLine($"PLC号: {g.PlcNum}, 组名: {g.GroupName}");
//}
// 3. 只在同一个PLC内检查地址是否冲突
if (groupsInSamePLC.Any(g => g.Start.Equals(config.Start, StringComparison.OrdinalIgnoreCase)))
{
ShowError($"在PLC {config.PlcNum} 中,起始地址 {config.Start} 已被使用");
return false;
}
// 地址范围验证
int startAddress = int.Parse(config.Start.Substring(1));
int endAddress = startAddress + config.Length - 1;
if (endAddress > 32675)
{
ShowError($"地址范围超出限制,结束地址不能超过D32675".Translated());
return false;
}
// 检查地址范围冲突
foreach (var other in groupsInSamePLC)
{
int otherStart = int.Parse(other.Start.Substring(1));
int otherEnd = otherStart + other.Length - 1;
if (!(endAddress < otherStart || startAddress > otherEnd))
{
ShowError($"地址范围与组 \"{other.GroupName}\" 冲突");
return false;
}
}
return true;
}
catch (Exception ex)
{
ShowError($"验证配置时发生错误: {ex.Message}");
return false;
}
}
// 地址格式验证
private bool ValidateAddressFormat(string address)
{
if (string.IsNullOrWhiteSpace(address)) return false;
// 检查是否以D开头(不区分大小写)
if (!address.StartsWith("D", StringComparison.OrdinalIgnoreCase))
{
return false;
}
// 检查后面是否为有效数字
string numberPart = address.Substring(1);
if (!int.TryParse(numberPart, out int addressNum))
{
return false;
}
// 检查地址范围(根据实际需求调整范围)
if (addressNum < 0 || addressNum > 9999)
{
return false;
}
return true;
}
#region 添加新通信组
/// <summary>
/// 添加新通信组
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void BtnAdd_Click(object sender, EventArgs e)
{
try
{
// 创建新组配置
var newGroup = new PlcGroupConfig
{
PlcNum = PlcNum, // 使用当前PlcNum而不是CurrentPLCConfig.PlcNum
GroupName = GenerateNewGroupName(),
Start = FindNextAvailableAddress(),
Length = 100,
IsTiggerRead = true,
IsFeedbackPlc = true,
IsActive = true,
Remark = ""
};
// 验证新配置
if (!ValidateConfigAll(newGroup))
{
return;
}
// 添加到总配置列表
TotalGroups.Add(newGroup);
// 保存到Excel文件
SaveToExcel(TotalGroups);
// 重新加载显示
LoadGroups();
ShowSuccess("新建通信组成功".Translated());
}
catch (Exception ex)
{
ShowError($"添加通信组失败: {ex.Message}");
}
}
/// <summary>
/// 生成新的组名
/// </summary>
private string GenerateNewGroupName()
{
int index = 1;
string baseName = "新建组".Translated();
string newName = baseName;
// 查找可用的组名
while (TotalGroups.Any(g => g.PlcNum == PlcNum && g.GroupName.Equals(newName, StringComparison.OrdinalIgnoreCase)))
{
index++;
newName = $"{baseName}{index}";
}
return newName;
}
/// <summary>
/// 查找下一个可用的地址
/// </summary>
private string FindNextAvailableAddress()
{
// 获取当前PLC的所有组
var plcGroups = TotalGroups.Where(g => g.PlcNum == PlcNum).ToList();
if (!plcGroups.Any())
{
return "D0"; // 如果没有现有组,从D0开始
}
// 找到最大的结束地址
int maxEndAddress = plcGroups.Max(g =>
{
int startAddr = int.Parse(g.Start.Substring(1));
return startAddr + g.Length;
});
// 确保地址不超过最大限制(32675)
if (maxEndAddress >= 32675)
{
throw new Exception("没有可用的地址空间".Translated());
}
// 返回下一个可用地址
return $"D{maxEndAddress}";
}
/// <summary>
/// 查找地址间隔
/// </summary>
private string FindAddressGap(int requiredLength = 100)
{
// 获取当前PLC的所有组,并按起始地址排序
var plcGroups = TotalGroups
.Where(g => g.PlcNum == PlcNum)
.Select(g => new
{
Start = int.Parse(g.Start.Substring(1)),
End = int.Parse(g.Start.Substring(1)) + g.Length - 1
})
.OrderBy(g => g.Start)
.ToList();
// 如果没有组,返回起始地址
if (!plcGroups.Any())
{
return "D0";
}
// 检查第一个组之前是否有足够空间
if (plcGroups.First().Start >= requiredLength)
{
return "D0";
}
// 检查组之间的间隔
for (int i = 0; i < plcGroups.Count - 1; i++)
{
int gapStart = plcGroups[i].End + 1;
int gapEnd = plcGroups[i + 1].Start - 1;
if (gapEnd - gapStart + 1 >= requiredLength)
{
return $"D{gapStart}";
}
}
// 检查最后一个组之后是否有足够空间
int lastEnd = plcGroups.Last().End;
if (lastEnd + requiredLength <= 32675)
{
return $"D{lastEnd + 1}";
}
throw new Exception("没有找到足够大的地址空间".Translated());
}
private void btn_Close_Click(object sender, EventArgs e)
{
this.Close();
}
#endregion
// 错误提示
private void ShowError(string message)
{
MessageBox.Show(message, "验证错误".Translated(), MessageBoxButtons.OK, MessageBoxIcon.Error);
}
// 成功提示
private void ShowSuccess(string message)
{
MessageBox.Show(message, "成功".Translated(), MessageBoxButtons.OK, MessageBoxIcon.Information);
}
#region 无边框拖动
private Point mPoint;
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
mPoint = new Point(e.X, e.Y);
}
private void Panel_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);
}
}
#endregion
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}
#endregion
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+92
View File
@@ -0,0 +1,92 @@
<?xml version="1.0" encoding="utf-8"?>
<Configuration>
<CONFIG_INFO>
<AutoLogin>False</AutoLogin>
<AutoLockScreen>False</AutoLockScreen>
<LockIntervalTime>3</LockIntervalTime>
<AutoSwitchMonitor>False</AutoSwitchMonitor>
<SwitchMonitorInterval>1</SwitchMonitorInterval>
<CurveDisplayCount>1</CurveDisplayCount>
<EnableCardMode>False</EnableCardMode>
<MESModeSwitch>True</MESModeSwitch>
<FetchMESParams>True</FetchMESParams>
<SaveThreadTimeLog>True</SaveThreadTimeLog>
<FetchServerData>False</FetchServerData>
<IsDebugMode>True</IsDebugMode>
<CoreCount>0</CoreCount>
<SteelshellCount>0</SteelshellCount>
</CONFIG_INFO>
<MES_CONFIG>
<SiteCode>43S</SiteCode>
<LineCode>FW-431</LineCode>
<EquipNum>431MSD04</EquipNum>
<SmartMeterCode>1,2</SmartMeterCode>
<ShiftChangeTime>20:30:00</ShiftChangeTime>
<MESLogPath>D:\APILog</MESLogPath>
<StorageServerIP>127.0.0.1</StorageServerIP>
<MESIp>10.62.2.202</MESIp>
<MESURLAddressIP>10.61.135.254</MESURLAddressIP>
<MESPort>80</MESPort>
<EmployeeAuthCheck>http://10.61.21.25/core/api/public/equipment/base/user/permission/verify</EmployeeAuthCheck>
<MaterialInputInfo>http://10.61.21.25/core/api/public/raw/material/input/un/first/process</MaterialInputInfo>
<DeviceParamRequest>http://10.61.21.25/core/api/public/param/setting/request</DeviceParamRequest>
<DeviceParamChange>http://10.61.21.25/core/api/public/param/setting/change</DeviceParamChange>
<ProductInStation>http://10.61.21.25/core/api/public/formation/section/arrival/batch</ProductInStation>
<ProductProcessParams>http://10.61.21.45/core/api/public/product/process/param/new/process</ProductProcessParams>
<ProductResultParams>http://10.61.21.45/core/api/public/product/process/param/new/result</ProductResultParams>
<ProductOutStation>http://10.61.21.25/core/api/public/eve/pm/formation-section</ProductOutStation>
<DeviceAlarm>http://10.61.21.45/core/api/public/equipment/alarm/currency</DeviceAlarm>
<DeviceStatus>http://10.61.21.45/core/api/public/eve/pm/eqm/run/status/operation</DeviceStatus>
<EnergyConsumption>http://10.61.21.45/core/api/public/eve/pm/energy/consumption/collection/submit</EnergyConsumption>
<Anemometer>https://iot.eveportal.com:9470/eve_api/ems/iot/upload_device_collect_data</Anemometer>
</MES_CONFIG>
<ElectricityMeter>
<IsEnableEM>True</IsEnableEM>
<EMCount>1</EMCount>
<EMStopBits>1</EMStopBits>
<EMParity>0</EMParity>
<EMBaudRate>9600</EMBaudRate>
<EMDataBits>8</EMDataBits>
<EMPortName0>COM1</EMPortName0>
</ElectricityMeter>
<STATISTICS>
<LastHour>1030</LastHour>
<LastResetTime>0</LastResetTime>
<LastTotalOldNum>360</LastTotalOldNum>
<LastOkOldNum>358</LastOkOldNum>
<ProdAllQty>0</ProdAllQty>
<ProdOKQty>0</ProdOKQty>
<ProdRFIDNgQty>0</ProdRFIDNgQty>
<ProdGangKeBarNgQty>0</ProdGangKeBarNgQty>
<ProdCoreNgQty>0</ProdCoreNgQty>
<ProdYLZNgQty>0</ProdYLZNgQty>
</STATISTICS>
<ANEMOMETER>
<AntiDustAirSpeedCount>25</AntiDustAirSpeedCount>
<AntiDustAirSpeed1>FSY-2A-001</AntiDustAirSpeed1>
<AntiDustAirSpeed2>FSY-2A-002</AntiDustAirSpeed2>
<AntiDustAirSpeed3>FSY-2A-003</AntiDustAirSpeed3>
<AntiDustAirSpeed4>FSY-2A-004</AntiDustAirSpeed4>
<AntiDustAirSpeed5>FSY-2A-005</AntiDustAirSpeed5>
<AntiDustAirSpeed6>FSY-2A-006</AntiDustAirSpeed6>
<AntiDustAirSpeed7>FSY-2A-007</AntiDustAirSpeed7>
<AntiDustAirSpeed8>FSY-2A-008</AntiDustAirSpeed8>
<AntiDustAirSpeed9>FSY-2A-009</AntiDustAirSpeed9>
<AntiDustAirSpeed10>FSY-2A-010</AntiDustAirSpeed10>
<AntiDustAirSpeed11>FSY-2A-011</AntiDustAirSpeed11>
<AntiDustAirSpeed12>FSY-2A-012</AntiDustAirSpeed12>
<AntiDustAirSpeed13>FSY-2A-013</AntiDustAirSpeed13>
<AntiDustAirSpeed14>FSY-2A-014</AntiDustAirSpeed14>
<AntiDustAirSpeed15>FSY-2A-015</AntiDustAirSpeed15>
<AntiDustAirSpeed16>FSY-2A-016</AntiDustAirSpeed16>
<AntiDustAirSpeed17>FSY-2A-017</AntiDustAirSpeed17>
<AntiDustAirSpeed18>FSY-2A-018</AntiDustAirSpeed18>
<AntiDustAirSpeed19>FSY-2A-019</AntiDustAirSpeed19>
<AntiDustAirSpeed20>FSY-2A-020</AntiDustAirSpeed20>
<AntiDustAirSpeed21>FSY-2A-021</AntiDustAirSpeed21>
<AntiDustAirSpeed22>FSY-2A-022</AntiDustAirSpeed22>
<AntiDustAirSpeed23>FSY-2A-023</AntiDustAirSpeed23>
<AntiDustAirSpeed24>FSY-2A-024</AntiDustAirSpeed24>
<AntiDustAirSpeed25>FSY-2A-025</AntiDustAirSpeed25>
</ANEMOMETER>
</Configuration>
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large Load Diff
Binary file not shown.
Binary file not shown.
+206
View File
@@ -0,0 +1,206 @@
namespace LargeSquareOne
{
partial class CustomMessageBox
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
this.panel1 = new System.Windows.Forms.Panel();
this.panel4 = new System.Windows.Forms.Panel();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.panel3 = new System.Windows.Forms.Panel();
this.panel2 = new System.Windows.Forms.Panel();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.lblMessage = new System.Windows.Forms.Label();
this.btStop = new HML.ButtonPlus();
this.btSatrt = new HML.ButtonPlus();
this.panel1.SuspendLayout();
this.panel4.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.panel3.SuspendLayout();
this.panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.SuspendLayout();
//
// panel1
//
this.panel1.Controls.Add(this.panel4);
this.panel1.Controls.Add(this.panel3);
this.panel1.Controls.Add(this.panel2);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(652, 428);
this.panel1.TabIndex = 0;
//
// panel4
//
this.panel4.Controls.Add(this.dataGridView1);
this.panel4.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel4.Location = new System.Drawing.Point(0, 53);
this.panel4.Name = "panel4";
this.panel4.Size = new System.Drawing.Size(652, 319);
this.panel4.TabIndex = 4;
//
// dataGridView1
//
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
this.dataGridView1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells;
this.dataGridView1.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells;
this.dataGridView1.BackgroundColor = System.Drawing.Color.White;
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle5.Font = new System.Drawing.Font("思源黑体 CN Regular", 14.25F);
dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.BackColor = System.Drawing.Color.White;
dataGridViewCellStyle6.Font = new System.Drawing.Font("思源黑体 CN Regular", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.ControlLightLight;
dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dataGridView1.DefaultCellStyle = dataGridViewCellStyle6;
this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView1.Location = new System.Drawing.Point(0, 0);
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.ReadOnly = true;
this.dataGridView1.RowTemplate.DefaultCellStyle.BackColor = System.Drawing.Color.White;
this.dataGridView1.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("思源黑体 CN Regular", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.dataGridView1.RowTemplate.DefaultCellStyle.ForeColor = System.Drawing.Color.Black;
this.dataGridView1.RowTemplate.Height = 23;
this.dataGridView1.Size = new System.Drawing.Size(652, 319);
this.dataGridView1.TabIndex = 0;
this.dataGridView1.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dataGridView1_RowPostPaint);
//
// panel3
//
this.panel3.BackColor = System.Drawing.Color.Silver;
this.panel3.Controls.Add(this.btStop);
this.panel3.Controls.Add(this.btSatrt);
this.panel3.Dock = System.Windows.Forms.DockStyle.Bottom;
this.panel3.Location = new System.Drawing.Point(0, 372);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(652, 56);
this.panel3.TabIndex = 3;
//
// panel2
//
this.panel2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(34)))), ((int)(((byte)(40)))), ((int)(((byte)(49)))));
this.panel2.Controls.Add(this.pictureBox1);
this.panel2.Controls.Add(this.lblMessage);
this.panel2.Dock = System.Windows.Forms.DockStyle.Top;
this.panel2.Location = new System.Drawing.Point(0, 0);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(652, 53);
this.panel2.TabIndex = 0;
//
// pictureBox1
//
this.pictureBox1.Image = global::LargeSquareOne.Properties.Resources.黄色_警告;
this.pictureBox1.Location = new System.Drawing.Point(7, 6);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(45, 37);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox1.TabIndex = 1;
this.pictureBox1.TabStop = false;
//
// lblMessage
//
this.lblMessage.AutoSize = true;
this.lblMessage.Font = new System.Drawing.Font("思源黑体 CN Bold", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMessage.ForeColor = System.Drawing.Color.Red;
this.lblMessage.Location = new System.Drawing.Point(58, 14);
this.lblMessage.Name = "lblMessage";
this.lblMessage.Size = new System.Drawing.Size(42, 23);
this.lblMessage.TabIndex = 0;
this.lblMessage.Text = "提示";
//
// btStop
//
this.btStop.BackNormalColor = System.Drawing.Color.Red;
this.btStop.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold);
this.btStop.Location = new System.Drawing.Point(390, 4);
this.btStop.Name = "btStop";
this.btStop.Size = new System.Drawing.Size(101, 49);
this.btStop.TabIndex = 15;
this.btStop.Text = "取 消";
//
// btSatrt
//
this.btSatrt.BackNormalColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
this.btSatrt.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btSatrt.Location = new System.Drawing.Point(134, 4);
this.btSatrt.Name = "btSatrt";
this.btSatrt.Size = new System.Drawing.Size(101, 49);
this.btSatrt.TabIndex = 14;
this.btSatrt.Text = "确 定";
//
// CustomMessageBox
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(652, 428);
this.Controls.Add(this.panel1);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "CustomMessageBox";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.TopMost = true;
this.Load += new System.EventHandler(this.CustomMessageBox_Load);
this.panel1.ResumeLayout(false);
this.panel4.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.panel3.ResumeLayout(false);
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.DataGridView dataGridView1;
private System.Windows.Forms.Panel panel4;
private System.Windows.Forms.Panel panel3;
private System.Windows.Forms.Label lblMessage;
private System.Windows.Forms.PictureBox pictureBox1;
private HML.ButtonPlus btStop;
private HML.ButtonPlus btSatrt;
}
}
+71
View File
@@ -0,0 +1,71 @@
using Language;
using System;
using System.Data;
using System.Drawing;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class CustomMessageBox : MultiLanguageForm
{
DataTable dataTable = new DataTable();
string strLblMessage = "";
public CustomMessageBox(DataTable _dataTable, string _strLblMessage)
{
InitializeComponent();
dataTable = _dataTable;
strLblMessage = _strLblMessage;
}
private void CustomMessageBox_Load(object sender, EventArgs e)
{
dataGridView1.DataSource = dataTable;
lblMessage.Text = strLblMessage;
}
//public void SetMessage(DataTable dataTable,string strLblMessage)
//{
// dataGridView1.DataSource = dataTable;
// lblMessage.Text = strLblMessage;
//}
private void btnOK_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
}
private void btnNo_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.No;
this.Close();
}
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//自动编号,与数据无关
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
e.RowBounds.Location.Y,
dataGridView1.RowHeadersWidth - 4,
e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics,
(e.RowIndex + 1).ToString(),
dataGridView1.RowHeadersDefaultCellStyle.Font,
rectangle,
dataGridView1.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.VerticalCenter | TextFormatFlags.Right);
}
//public static void Show(DataTable dataTable, string message, string title)
//{
// CustomMessageBox messageBox = new CustomMessageBox(dataTable, message);
// messageBox.SetMessage(dataTable,message);
// messageBox.Text = title;
// messageBox.ShowDialog();
//}
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+368
View File
@@ -0,0 +1,368 @@
namespace LargeSquareOne
{
partial class FrmAlarmLog
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
this.dgv_OPLog = new System.Windows.Forms.DataGridView();
this.OPLogDateTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OPLogOperationType = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OPLogOperationalMessage = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dgv_Log = new System.Windows.Forms.DataGridView();
this.LogDateTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.LogDateType = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.LogDateInformation = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.lblSystemLog = new System.Windows.Forms.Label();
this.lblOperationLog = new System.Windows.Forms.Label();
this.dgv_Alarm = new System.Windows.Forms.DataGridView();
this.AlarmLogDateTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.AlarmLogAlarmType = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.AlarmLogALARM = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.lblSystemAlarm = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.dgv_OPLog)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dgv_Log)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dgv_Alarm)).BeginInit();
this.SuspendLayout();
//
// dgv_OPLog
//
this.dgv_OPLog.AllowUserToAddRows = false;
this.dgv_OPLog.AllowUserToDeleteRows = false;
this.dgv_OPLog.AllowUserToResizeColumns = false;
this.dgv_OPLog.AllowUserToResizeRows = false;
this.dgv_OPLog.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.dgv_OPLog.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgv_OPLog.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_OPLog.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgv_OPLog.ColumnHeadersHeight = 30;
this.dgv_OPLog.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgv_OPLog.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.OPLogDateTime,
this.OPLogOperationType,
this.OPLogOperationalMessage});
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_OPLog.DefaultCellStyle = dataGridViewCellStyle2;
this.dgv_OPLog.EnableHeadersVisualStyles = false;
this.dgv_OPLog.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgv_OPLog.Location = new System.Drawing.Point(22, 282);
this.dgv_OPLog.MultiSelect = false;
this.dgv_OPLog.Name = "dgv_OPLog";
this.dgv_OPLog.ReadOnly = true;
this.dgv_OPLog.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_OPLog.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dgv_OPLog.RowHeadersWidth = 120;
this.dgv_OPLog.RowTemplate.Height = 23;
this.dgv_OPLog.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgv_OPLog.Size = new System.Drawing.Size(1827, 266);
this.dgv_OPLog.TabIndex = 6;
this.dgv_OPLog.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgv_Log_RowPostPaint);
//
// OPLogDateTime
//
this.OPLogDateTime.HeaderText = "日期时间";
this.OPLogDateTime.Name = "OPLogDateTime";
this.OPLogDateTime.ReadOnly = true;
this.OPLogDateTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.OPLogDateTime.Width = 200;
//
// OPLogOperationType
//
this.OPLogOperationType.HeaderText = "操作类型";
this.OPLogOperationType.Name = "OPLogOperationType";
this.OPLogOperationType.ReadOnly = true;
this.OPLogOperationType.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.OPLogOperationType.Width = 200;
//
// OPLogOperationalMessage
//
this.OPLogOperationalMessage.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.OPLogOperationalMessage.HeaderText = "操作信息";
this.OPLogOperationalMessage.Name = "OPLogOperationalMessage";
this.OPLogOperationalMessage.ReadOnly = true;
this.OPLogOperationalMessage.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// dgv_Log
//
this.dgv_Log.AllowUserToAddRows = false;
this.dgv_Log.AllowUserToDeleteRows = false;
this.dgv_Log.AllowUserToResizeColumns = false;
this.dgv_Log.AllowUserToResizeRows = false;
this.dgv_Log.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.dgv_Log.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgv_Log.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle4.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle4.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Log.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
this.dgv_Log.ColumnHeadersHeight = 30;
this.dgv_Log.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgv_Log.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.LogDateTime,
this.LogDateType,
this.LogDateInformation});
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle5.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle5.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_Log.DefaultCellStyle = dataGridViewCellStyle5;
this.dgv_Log.EnableHeadersVisualStyles = false;
this.dgv_Log.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgv_Log.Location = new System.Drawing.Point(22, 14);
this.dgv_Log.MultiSelect = false;
this.dgv_Log.Name = "dgv_Log";
this.dgv_Log.ReadOnly = true;
this.dgv_Log.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle6.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle6.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle6.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle6.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Log.RowHeadersDefaultCellStyle = dataGridViewCellStyle6;
this.dgv_Log.RowHeadersWidth = 120;
this.dgv_Log.RowTemplate.Height = 23;
this.dgv_Log.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgv_Log.Size = new System.Drawing.Size(1827, 266);
this.dgv_Log.TabIndex = 7;
this.dgv_Log.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgv_Log_RowPostPaint);
//
// LogDateTime
//
this.LogDateTime.HeaderText = "日期时间";
this.LogDateTime.Name = "LogDateTime";
this.LogDateTime.ReadOnly = true;
this.LogDateTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.LogDateTime.Width = 200;
//
// LogDateType
//
this.LogDateType.HeaderText = "日志类型";
this.LogDateType.Name = "LogDateType";
this.LogDateType.ReadOnly = true;
this.LogDateType.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.LogDateType.Width = 200;
//
// LogDateInformation
//
this.LogDateInformation.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.LogDateInformation.HeaderText = "日志信息";
this.LogDateInformation.Name = "LogDateInformation";
this.LogDateInformation.ReadOnly = true;
this.LogDateInformation.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// lblSystemLog
//
this.lblSystemLog.BackColor = System.Drawing.Color.Transparent;
this.lblSystemLog.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblSystemLog.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(239)))), ((int)(((byte)(246)))), ((int)(((byte)(255)))));
this.lblSystemLog.Location = new System.Drawing.Point(43, 19);
this.lblSystemLog.Name = "lblSystemLog";
this.lblSystemLog.Size = new System.Drawing.Size(75, 23);
this.lblSystemLog.TabIndex = 11;
this.lblSystemLog.Text = "系统日志";
//
// lblOperationLog
//
this.lblOperationLog.BackColor = System.Drawing.Color.Transparent;
this.lblOperationLog.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblOperationLog.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(239)))), ((int)(((byte)(246)))), ((int)(((byte)(255)))));
this.lblOperationLog.Location = new System.Drawing.Point(42, 287);
this.lblOperationLog.Name = "lblOperationLog";
this.lblOperationLog.Size = new System.Drawing.Size(89, 19);
this.lblOperationLog.TabIndex = 10;
this.lblOperationLog.Text = "操作日志";
//
// dgv_Alarm
//
this.dgv_Alarm.AllowUserToAddRows = false;
this.dgv_Alarm.AllowUserToDeleteRows = false;
this.dgv_Alarm.AllowUserToResizeColumns = false;
this.dgv_Alarm.AllowUserToResizeRows = false;
this.dgv_Alarm.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.dgv_Alarm.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgv_Alarm.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle7.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle7.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle7.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Alarm.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
this.dgv_Alarm.ColumnHeadersHeight = 30;
this.dgv_Alarm.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgv_Alarm.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.AlarmLogDateTime,
this.AlarmLogAlarmType,
this.AlarmLogALARM});
dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle8.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle8.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle8.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle8.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_Alarm.DefaultCellStyle = dataGridViewCellStyle8;
this.dgv_Alarm.EnableHeadersVisualStyles = false;
this.dgv_Alarm.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgv_Alarm.Location = new System.Drawing.Point(22, 550);
this.dgv_Alarm.MultiSelect = false;
this.dgv_Alarm.Name = "dgv_Alarm";
this.dgv_Alarm.ReadOnly = true;
this.dgv_Alarm.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle9.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle9.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle9.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle9.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Alarm.RowHeadersDefaultCellStyle = dataGridViewCellStyle9;
this.dgv_Alarm.RowHeadersWidth = 120;
this.dgv_Alarm.RowTemplate.Height = 23;
this.dgv_Alarm.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgv_Alarm.Size = new System.Drawing.Size(1827, 266);
this.dgv_Alarm.TabIndex = 5;
this.dgv_Alarm.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgv_Log_RowPostPaint);
//
// AlarmLogDateTime
//
this.AlarmLogDateTime.HeaderText = "日期时间";
this.AlarmLogDateTime.Name = "AlarmLogDateTime";
this.AlarmLogDateTime.ReadOnly = true;
this.AlarmLogDateTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.AlarmLogDateTime.Width = 200;
//
// AlarmLogAlarmType
//
this.AlarmLogAlarmType.HeaderText = "报警类型";
this.AlarmLogAlarmType.Name = "AlarmLogAlarmType";
this.AlarmLogAlarmType.ReadOnly = true;
this.AlarmLogAlarmType.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.AlarmLogAlarmType.Width = 200;
//
// AlarmLogALARM
//
this.AlarmLogALARM.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.AlarmLogALARM.HeaderText = "报警信息";
this.AlarmLogALARM.Name = "AlarmLogALARM";
this.AlarmLogALARM.ReadOnly = true;
this.AlarmLogALARM.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// lblSystemAlarm
//
this.lblSystemAlarm.BackColor = System.Drawing.Color.Transparent;
this.lblSystemAlarm.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblSystemAlarm.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(239)))), ((int)(((byte)(246)))), ((int)(((byte)(255)))));
this.lblSystemAlarm.Location = new System.Drawing.Point(43, 555);
this.lblSystemAlarm.Name = "lblSystemAlarm";
this.lblSystemAlarm.Size = new System.Drawing.Size(89, 19);
this.lblSystemAlarm.TabIndex = 9;
this.lblSystemAlarm.Text = "系统报警";
//
// FrmAlarmLog
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(1874, 835);
this.Controls.Add(this.lblOperationLog);
this.Controls.Add(this.lblSystemAlarm);
this.Controls.Add(this.dgv_Alarm);
this.Controls.Add(this.dgv_OPLog);
this.Controls.Add(this.lblSystemLog);
this.Controls.Add(this.dgv_Log);
this.Font = new System.Drawing.Font("微软雅黑", 10.5F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.Name = "FrmAlarmLog";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "日志报警";
((System.ComponentModel.ISupportInitialize)(this.dgv_OPLog)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dgv_Log)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dgv_Alarm)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.DataGridView dgv_OPLog;
private System.Windows.Forms.DataGridView dgv_Log;
private System.Windows.Forms.Label lblSystemLog;
private System.Windows.Forms.Label lblOperationLog;
private System.Windows.Forms.DataGridView dgv_Alarm;
private System.Windows.Forms.Label lblSystemAlarm;
private System.Windows.Forms.DataGridViewTextBoxColumn OPLogDateTime;
private System.Windows.Forms.DataGridViewTextBoxColumn OPLogOperationType;
private System.Windows.Forms.DataGridViewTextBoxColumn OPLogOperationalMessage;
private System.Windows.Forms.DataGridViewTextBoxColumn LogDateTime;
private System.Windows.Forms.DataGridViewTextBoxColumn LogDateType;
private System.Windows.Forms.DataGridViewTextBoxColumn LogDateInformation;
private System.Windows.Forms.DataGridViewTextBoxColumn AlarmLogDateTime;
private System.Windows.Forms.DataGridViewTextBoxColumn AlarmLogAlarmType;
private System.Windows.Forms.DataGridViewTextBoxColumn AlarmLogALARM;
}
}
+157
View File
@@ -0,0 +1,157 @@
using JinYuan.Helper;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using System;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmAlarmLog : MultiLanguageForm
{
public FrmAlarmLog()
{
InitializeComponent();
}
private string CurrentTime
{
get { return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); }
}
/// <summary>
/// 通用的添加系统日志
/// </summary>
/// <param name="isError"></param>
/// <param name="info"></param>
public async void AddLog(bool isError, string info)
{
if (dgv_Log.InvokeRequired)
{
this.dgv_Log.Invoke(new Action<bool, string>(AddLog), isError, info);
}
else
{
int rowCount = this.dgv_Log.Rows.Add();
this.dgv_Log.Rows[rowCount].Cells[0].Value = CurrentTime;
this.dgv_Log.Rows[rowCount].Cells[1].Value = isError ? "错误".Translated() : "信息".Translated();
this.dgv_Log.Rows[rowCount].Cells[2].Value = info;
// 设置最新行为活动行 (当前行)
this.dgv_Log.CurrentCell = this.dgv_Log.Rows[this.dgv_Log.Rows.Count - 1].Cells[0];
//dgv清理
if (this.dgv_Log.RowCount > 300)
{
//this.dgv_Log.Rows.RemoveAt(0);
this.dgv_Log.Rows.Clear();
GC.Collect();
}
}
//存储到数据库
await CommonMethods.db.AddReturnBoolAsync(new SysLog()
{
InsertTime = CurrentTime,
LogType = "系统日志".Translated(),
Note = info,
AlarmType = isError ? "错误".Translated() : "信息".Translated(),
Operater = CommonMethods.currentAdmin.LoginName
});
}
/// <summary>
/// 通用的添加操作日志
/// </summary>
/// <param name="isError"></param>
/// <param name="info"></param>
public async void AddOPLog(bool isError, string info)
{
if (this.dgv_OPLog.InvokeRequired)
{
this.dgv_OPLog.Invoke(new Action<bool, string>(AddOPLog), isError, info);
}
else
{
int rowCount = this.dgv_OPLog.Rows.Add();
this.dgv_OPLog.Rows[rowCount].Cells[0].Value = CurrentTime;
this.dgv_OPLog.Rows[rowCount].Cells[1].Value = isError ? "错误".Translated() : "信息".Translated();
this.dgv_OPLog.Rows[rowCount].Cells[2].Value = info;
// 设置最新行为活动行 (当前行)
this.dgv_OPLog.CurrentCell = this.dgv_OPLog.Rows[this.dgv_OPLog.Rows.Count - 1].Cells[0];
//dgv清理
if (this.dgv_OPLog.RowCount > 300)
{
//this.dgv_OPLog.Rows.RemoveAt(0);
this.dgv_OPLog.Rows.Clear();
GC.Collect();
}
}
//存储到数据库
await CommonMethods.db.AddReturnBoolAsync(new SysLog()
{
InsertTime = CurrentTime,
LogType = "操作日志".Translated(),
Note = info,
AlarmType = isError ? "错误".Translated() : "信息".Translated(),
Operater = CommonMethods.currentAdmin.LoginName
});
}
/// <summary>
/// 通用的添加报警信息
/// </summary>
/// <param name="isTrigger">sh</param>
/// <param name="info"></param>
public async void AddAlarm(SysLog sysLog)
{
if (this.dgv_Alarm.InvokeRequired)
{
this.dgv_Alarm.Invoke(new Action<SysLog>(AddAlarm), sysLog);
}
else
{
int rowCount = this.dgv_Alarm.Rows.Add();
this.dgv_Alarm.Rows[rowCount].Cells[0].Value = sysLog.InsertTime;
this.dgv_Alarm.Rows[rowCount].Cells[1].Value = sysLog.AlarmType;
this.dgv_Alarm.Rows[rowCount].Cells[2].Value = sysLog.Note;
// 设置最新行为活动行 (当前行)
this.dgv_Alarm.CurrentCell = this.dgv_Alarm.Rows[this.dgv_Alarm.Rows.Count - 1].Cells[0];
}
//dgv清理
if (this.dgv_Alarm.RowCount > 300)
{
//this.dgv_Alarm.Rows.RemoveAt(0);
this.dgv_Alarm.Rows.Clear();
GC.Collect();
}
//存储到数据库
await CommonMethods.db.AddReturnBoolAsync(sysLog);
}
private void dgv_Log_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
DataGridViewHelper.DgvRowPostPaint((DataGridView)sender, e);
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams parss = base.CreateParams;
parss.ExStyle |= 0x02000000;
return parss;
}
}
#endregion
}
}
+147
View File
@@ -0,0 +1,147 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="OPLogDateTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OPLogOperationType.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OPLogOperationalMessage.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="LogDateTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="LogDateType.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="LogDateInformation.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="AlarmLogDateTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="AlarmLogAlarmType.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="AlarmLogALARM.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+450
View File
@@ -0,0 +1,450 @@
namespace LargeSquareOne
{
partial class FrmCpkCount
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
SeeSharpTools.JY.GUI.StripChartXSeries stripChartXSeries1 = new SeeSharpTools.JY.GUI.StripChartXSeries();
SeeSharpTools.JY.GUI.StripChartXSeries stripChartXSeries2 = new SeeSharpTools.JY.GUI.StripChartXSeries();
JinYuan.Models.CPKModel cpkModel1 = new JinYuan.Models.CPKModel();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend1 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series1 = new System.Windows.Forms.DataVisualization.Charting.Series();
this.btn_Add = new System.Windows.Forms.Button();
this.stripChartX2 = new SeeSharpTools.JY.GUI.StripChartX();
this.stripChartX3 = new SeeSharpTools.JY.GUI.StripChartX();
this.trw1 = new LargeSquareOne.trw();
this.chartControl = new System.Windows.Forms.DataVisualization.Charting.Chart();
((System.ComponentModel.ISupportInitialize)(this.chartControl)).BeginInit();
this.SuspendLayout();
//
// btn_Add
//
this.btn_Add.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Add.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Add.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Add.ForeColor = System.Drawing.Color.White;
this.btn_Add.Location = new System.Drawing.Point(7, 44);
this.btn_Add.Name = "btn_Add";
this.btn_Add.Size = new System.Drawing.Size(101, 36);
this.btn_Add.TabIndex = 13;
this.btn_Add.Text = "查 询";
this.btn_Add.UseVisualStyleBackColor = false;
this.btn_Add.Click += new System.EventHandler(this.btn_Add_Click);
//
// stripChartX2
//
this.stripChartX2.AxisX.AutoScale = false;
this.stripChartX2.AxisX.AutoZoomReset = false;
this.stripChartX2.AxisX.Color = System.Drawing.Color.Black;
this.stripChartX2.AxisX.InitWithScaleView = false;
this.stripChartX2.AxisX.IsLogarithmic = false;
this.stripChartX2.AxisX.LabelAngle = 0;
this.stripChartX2.AxisX.LabelEnabled = true;
this.stripChartX2.AxisX.LabelFormat = null;
this.stripChartX2.AxisX.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisX.MajorGridCount = 6;
this.stripChartX2.AxisX.MajorGridEnabled = true;
this.stripChartX2.AxisX.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX2.AxisX.Maximum = 1000D;
this.stripChartX2.AxisX.Minimum = 0D;
this.stripChartX2.AxisX.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisX.MinorGridEnabled = false;
this.stripChartX2.AxisX.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX2.AxisX.TickWidth = 1F;
this.stripChartX2.AxisX.Title = "";
this.stripChartX2.AxisX.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX2.AxisX.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX2.AxisX.ViewMaximum = 1000D;
this.stripChartX2.AxisX.ViewMinimum = 0D;
this.stripChartX2.AxisX2.AutoScale = false;
this.stripChartX2.AxisX2.AutoZoomReset = false;
this.stripChartX2.AxisX2.Color = System.Drawing.Color.Black;
this.stripChartX2.AxisX2.InitWithScaleView = false;
this.stripChartX2.AxisX2.IsLogarithmic = false;
this.stripChartX2.AxisX2.LabelAngle = 0;
this.stripChartX2.AxisX2.LabelEnabled = true;
this.stripChartX2.AxisX2.LabelFormat = null;
this.stripChartX2.AxisX2.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisX2.MajorGridCount = 6;
this.stripChartX2.AxisX2.MajorGridEnabled = true;
this.stripChartX2.AxisX2.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX2.AxisX2.Maximum = 1000D;
this.stripChartX2.AxisX2.Minimum = 0D;
this.stripChartX2.AxisX2.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisX2.MinorGridEnabled = false;
this.stripChartX2.AxisX2.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX2.AxisX2.TickWidth = 1F;
this.stripChartX2.AxisX2.Title = "";
this.stripChartX2.AxisX2.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX2.AxisX2.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX2.AxisX2.ViewMaximum = 1000D;
this.stripChartX2.AxisX2.ViewMinimum = 0D;
this.stripChartX2.AxisY.AutoScale = true;
this.stripChartX2.AxisY.AutoZoomReset = false;
this.stripChartX2.AxisY.Color = System.Drawing.Color.Black;
this.stripChartX2.AxisY.InitWithScaleView = false;
this.stripChartX2.AxisY.IsLogarithmic = false;
this.stripChartX2.AxisY.LabelAngle = 0;
this.stripChartX2.AxisY.LabelEnabled = true;
this.stripChartX2.AxisY.LabelFormat = null;
this.stripChartX2.AxisY.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisY.MajorGridCount = 6;
this.stripChartX2.AxisY.MajorGridEnabled = true;
this.stripChartX2.AxisY.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX2.AxisY.Maximum = 3.5D;
this.stripChartX2.AxisY.Minimum = 0.5D;
this.stripChartX2.AxisY.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisY.MinorGridEnabled = false;
this.stripChartX2.AxisY.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX2.AxisY.TickWidth = 1F;
this.stripChartX2.AxisY.Title = "";
this.stripChartX2.AxisY.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX2.AxisY.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX2.AxisY.ViewMaximum = 3.5D;
this.stripChartX2.AxisY.ViewMinimum = 0.5D;
this.stripChartX2.AxisY2.AutoScale = true;
this.stripChartX2.AxisY2.AutoZoomReset = false;
this.stripChartX2.AxisY2.Color = System.Drawing.Color.Black;
this.stripChartX2.AxisY2.InitWithScaleView = false;
this.stripChartX2.AxisY2.IsLogarithmic = false;
this.stripChartX2.AxisY2.LabelAngle = 0;
this.stripChartX2.AxisY2.LabelEnabled = true;
this.stripChartX2.AxisY2.LabelFormat = null;
this.stripChartX2.AxisY2.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisY2.MajorGridCount = 6;
this.stripChartX2.AxisY2.MajorGridEnabled = true;
this.stripChartX2.AxisY2.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX2.AxisY2.Maximum = 3.5D;
this.stripChartX2.AxisY2.Minimum = 0.5D;
this.stripChartX2.AxisY2.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX2.AxisY2.MinorGridEnabled = false;
this.stripChartX2.AxisY2.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX2.AxisY2.TickWidth = 1F;
this.stripChartX2.AxisY2.Title = "";
this.stripChartX2.AxisY2.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX2.AxisY2.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX2.AxisY2.ViewMaximum = 3.5D;
this.stripChartX2.AxisY2.ViewMinimum = 0.5D;
this.stripChartX2.BackColor = System.Drawing.Color.Transparent;
this.stripChartX2.ChartAreaBackColor = System.Drawing.Color.Empty;
this.stripChartX2.Direction = SeeSharpTools.JY.GUI.StripChartX.ScrollDirection.LeftToRight;
this.stripChartX2.DisplayPoints = 4000;
this.stripChartX2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.stripChartX2.ForeColor = System.Drawing.Color.White;
this.stripChartX2.GradientStyle = SeeSharpTools.JY.GUI.StripChartX.ChartGradientStyle.None;
this.stripChartX2.LegendBackColor = System.Drawing.Color.Transparent;
this.stripChartX2.LegendFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.stripChartX2.LegendForeColor = System.Drawing.Color.White;
this.stripChartX2.LegendVisible = true;
stripChartXSeries1.Color = System.Drawing.Color.Red;
stripChartXSeries1.Marker = SeeSharpTools.JY.GUI.StripChartXSeries.MarkerType.None;
stripChartXSeries1.Name = "Series1";
stripChartXSeries1.Type = SeeSharpTools.JY.GUI.StripChartXSeries.LineType.FastLine;
stripChartXSeries1.Visible = true;
stripChartXSeries1.Width = SeeSharpTools.JY.GUI.StripChartXSeries.LineWidth.Thin;
stripChartXSeries1.XPlotAxis = SeeSharpTools.JY.GUI.StripChartXAxis.PlotAxis.Primary;
stripChartXSeries1.YPlotAxis = SeeSharpTools.JY.GUI.StripChartXAxis.PlotAxis.Primary;
this.stripChartX2.LineSeries.Add(stripChartXSeries1);
this.stripChartX2.Location = new System.Drawing.Point(550, 378);
this.stripChartX2.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
this.stripChartX2.Miscellaneous.CheckInfinity = false;
this.stripChartX2.Miscellaneous.CheckNaN = false;
this.stripChartX2.Miscellaneous.CheckNegtiveOrZero = false;
this.stripChartX2.Miscellaneous.DirectionChartCount = 3;
this.stripChartX2.Miscellaneous.Fitting = SeeSharpTools.JY.GUI.StripChartX.FitType.Range;
this.stripChartX2.Miscellaneous.MaxSeriesCount = 32;
this.stripChartX2.Miscellaneous.MaxSeriesPointCount = 4000;
this.stripChartX2.Miscellaneous.SplitLayoutColumnInterval = 0F;
this.stripChartX2.Miscellaneous.SplitLayoutDirection = SeeSharpTools.JY.GUI.StripChartXUtility.LayoutDirection.LeftToRight;
this.stripChartX2.Miscellaneous.SplitLayoutRowInterval = 0F;
this.stripChartX2.Miscellaneous.SplitViewAutoLayout = true;
this.stripChartX2.Name = "stripChartX2";
this.stripChartX2.NextTimeStamp = new System.DateTime(((long)(0)));
this.stripChartX2.ScrollType = SeeSharpTools.JY.GUI.StripChartX.StripScrollType.Cumulation;
this.stripChartX2.SeriesCount = 1;
this.stripChartX2.Size = new System.Drawing.Size(830, 157);
this.stripChartX2.SplitView = false;
this.stripChartX2.StartIndex = 0;
this.stripChartX2.TabIndex = 15;
this.stripChartX2.TimeInterval = System.TimeSpan.Parse("00:00:00");
this.stripChartX2.TimeStampFormat = null;
this.stripChartX2.XCursor.AutoInterval = true;
this.stripChartX2.XCursor.Color = System.Drawing.Color.DeepSkyBlue;
this.stripChartX2.XCursor.Interval = 0.001D;
this.stripChartX2.XCursor.Mode = SeeSharpTools.JY.GUI.StripChartXCursor.CursorMode.Zoom;
this.stripChartX2.XCursor.SelectionColor = System.Drawing.Color.LightGray;
this.stripChartX2.XCursor.Value = double.NaN;
this.stripChartX2.XDataType = SeeSharpTools.JY.GUI.StripChartX.XAxisDataType.Index;
this.stripChartX2.YCursor.AutoInterval = true;
this.stripChartX2.YCursor.Color = System.Drawing.Color.DeepSkyBlue;
this.stripChartX2.YCursor.Interval = 0.001D;
this.stripChartX2.YCursor.Mode = SeeSharpTools.JY.GUI.StripChartXCursor.CursorMode.Disabled;
this.stripChartX2.YCursor.SelectionColor = System.Drawing.Color.LightGray;
this.stripChartX2.YCursor.Value = double.NaN;
//
// stripChartX3
//
this.stripChartX3.AxisX.AutoScale = false;
this.stripChartX3.AxisX.AutoZoomReset = false;
this.stripChartX3.AxisX.Color = System.Drawing.Color.Black;
this.stripChartX3.AxisX.InitWithScaleView = false;
this.stripChartX3.AxisX.IsLogarithmic = false;
this.stripChartX3.AxisX.LabelAngle = 0;
this.stripChartX3.AxisX.LabelEnabled = true;
this.stripChartX3.AxisX.LabelFormat = null;
this.stripChartX3.AxisX.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisX.MajorGridCount = 6;
this.stripChartX3.AxisX.MajorGridEnabled = true;
this.stripChartX3.AxisX.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX3.AxisX.Maximum = 1000D;
this.stripChartX3.AxisX.Minimum = 0D;
this.stripChartX3.AxisX.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisX.MinorGridEnabled = false;
this.stripChartX3.AxisX.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX3.AxisX.TickWidth = 1F;
this.stripChartX3.AxisX.Title = "";
this.stripChartX3.AxisX.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX3.AxisX.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX3.AxisX.ViewMaximum = 1000D;
this.stripChartX3.AxisX.ViewMinimum = 0D;
this.stripChartX3.AxisX2.AutoScale = false;
this.stripChartX3.AxisX2.AutoZoomReset = false;
this.stripChartX3.AxisX2.Color = System.Drawing.Color.Black;
this.stripChartX3.AxisX2.InitWithScaleView = false;
this.stripChartX3.AxisX2.IsLogarithmic = false;
this.stripChartX3.AxisX2.LabelAngle = 0;
this.stripChartX3.AxisX2.LabelEnabled = true;
this.stripChartX3.AxisX2.LabelFormat = null;
this.stripChartX3.AxisX2.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisX2.MajorGridCount = 6;
this.stripChartX3.AxisX2.MajorGridEnabled = true;
this.stripChartX3.AxisX2.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX3.AxisX2.Maximum = 1000D;
this.stripChartX3.AxisX2.Minimum = 0D;
this.stripChartX3.AxisX2.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisX2.MinorGridEnabled = false;
this.stripChartX3.AxisX2.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX3.AxisX2.TickWidth = 1F;
this.stripChartX3.AxisX2.Title = "";
this.stripChartX3.AxisX2.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX3.AxisX2.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX3.AxisX2.ViewMaximum = 1000D;
this.stripChartX3.AxisX2.ViewMinimum = 0D;
this.stripChartX3.AxisY.AutoScale = true;
this.stripChartX3.AxisY.AutoZoomReset = false;
this.stripChartX3.AxisY.Color = System.Drawing.Color.Black;
this.stripChartX3.AxisY.InitWithScaleView = false;
this.stripChartX3.AxisY.IsLogarithmic = false;
this.stripChartX3.AxisY.LabelAngle = 0;
this.stripChartX3.AxisY.LabelEnabled = true;
this.stripChartX3.AxisY.LabelFormat = null;
this.stripChartX3.AxisY.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisY.MajorGridCount = 6;
this.stripChartX3.AxisY.MajorGridEnabled = true;
this.stripChartX3.AxisY.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX3.AxisY.Maximum = 3.5D;
this.stripChartX3.AxisY.Minimum = 0.5D;
this.stripChartX3.AxisY.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisY.MinorGridEnabled = false;
this.stripChartX3.AxisY.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX3.AxisY.TickWidth = 1F;
this.stripChartX3.AxisY.Title = "";
this.stripChartX3.AxisY.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX3.AxisY.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX3.AxisY.ViewMaximum = 3.5D;
this.stripChartX3.AxisY.ViewMinimum = 0.5D;
this.stripChartX3.AxisY2.AutoScale = true;
this.stripChartX3.AxisY2.AutoZoomReset = false;
this.stripChartX3.AxisY2.Color = System.Drawing.Color.Black;
this.stripChartX3.AxisY2.InitWithScaleView = false;
this.stripChartX3.AxisY2.IsLogarithmic = false;
this.stripChartX3.AxisY2.LabelAngle = 0;
this.stripChartX3.AxisY2.LabelEnabled = true;
this.stripChartX3.AxisY2.LabelFormat = null;
this.stripChartX3.AxisY2.MajorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisY2.MajorGridCount = 6;
this.stripChartX3.AxisY2.MajorGridEnabled = true;
this.stripChartX3.AxisY2.MajorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.Dash;
this.stripChartX3.AxisY2.Maximum = 3.5D;
this.stripChartX3.AxisY2.Minimum = 0.5D;
this.stripChartX3.AxisY2.MinorGridColor = System.Drawing.Color.Black;
this.stripChartX3.AxisY2.MinorGridEnabled = false;
this.stripChartX3.AxisY2.MinorGridType = SeeSharpTools.JY.GUI.StripChartXAxis.GridStyle.DashDot;
this.stripChartX3.AxisY2.TickWidth = 1F;
this.stripChartX3.AxisY2.Title = "";
this.stripChartX3.AxisY2.TitleOrientation = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextOrientation.Auto;
this.stripChartX3.AxisY2.TitlePosition = SeeSharpTools.JY.GUI.StripChartXAxis.AxisTextPosition.Center;
this.stripChartX3.AxisY2.ViewMaximum = 3.5D;
this.stripChartX3.AxisY2.ViewMinimum = 0.5D;
this.stripChartX3.BackColor = System.Drawing.Color.Transparent;
this.stripChartX3.ChartAreaBackColor = System.Drawing.Color.Empty;
this.stripChartX3.Direction = SeeSharpTools.JY.GUI.StripChartX.ScrollDirection.LeftToRight;
this.stripChartX3.DisplayPoints = 4000;
this.stripChartX3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.stripChartX3.ForeColor = System.Drawing.Color.White;
this.stripChartX3.GradientStyle = SeeSharpTools.JY.GUI.StripChartX.ChartGradientStyle.None;
this.stripChartX3.LegendBackColor = System.Drawing.Color.Transparent;
this.stripChartX3.LegendFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.stripChartX3.LegendForeColor = System.Drawing.Color.White;
this.stripChartX3.LegendVisible = true;
stripChartXSeries2.Color = System.Drawing.Color.Red;
stripChartXSeries2.Marker = SeeSharpTools.JY.GUI.StripChartXSeries.MarkerType.None;
stripChartXSeries2.Name = "Series1";
stripChartXSeries2.Type = SeeSharpTools.JY.GUI.StripChartXSeries.LineType.FastLine;
stripChartXSeries2.Visible = true;
stripChartXSeries2.Width = SeeSharpTools.JY.GUI.StripChartXSeries.LineWidth.Thin;
stripChartXSeries2.XPlotAxis = SeeSharpTools.JY.GUI.StripChartXAxis.PlotAxis.Primary;
stripChartXSeries2.YPlotAxis = SeeSharpTools.JY.GUI.StripChartXAxis.PlotAxis.Primary;
this.stripChartX3.LineSeries.Add(stripChartXSeries2);
this.stripChartX3.Location = new System.Drawing.Point(550, 543);
this.stripChartX3.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
this.stripChartX3.Miscellaneous.CheckInfinity = false;
this.stripChartX3.Miscellaneous.CheckNaN = false;
this.stripChartX3.Miscellaneous.CheckNegtiveOrZero = false;
this.stripChartX3.Miscellaneous.DirectionChartCount = 3;
this.stripChartX3.Miscellaneous.Fitting = SeeSharpTools.JY.GUI.StripChartX.FitType.Range;
this.stripChartX3.Miscellaneous.MaxSeriesCount = 32;
this.stripChartX3.Miscellaneous.MaxSeriesPointCount = 4000;
this.stripChartX3.Miscellaneous.SplitLayoutColumnInterval = 0F;
this.stripChartX3.Miscellaneous.SplitLayoutDirection = SeeSharpTools.JY.GUI.StripChartXUtility.LayoutDirection.LeftToRight;
this.stripChartX3.Miscellaneous.SplitLayoutRowInterval = 0F;
this.stripChartX3.Miscellaneous.SplitViewAutoLayout = true;
this.stripChartX3.Name = "stripChartX3";
this.stripChartX3.NextTimeStamp = new System.DateTime(((long)(0)));
this.stripChartX3.ScrollType = SeeSharpTools.JY.GUI.StripChartX.StripScrollType.Cumulation;
this.stripChartX3.SeriesCount = 1;
this.stripChartX3.Size = new System.Drawing.Size(830, 180);
this.stripChartX3.SplitView = false;
this.stripChartX3.StartIndex = 0;
this.stripChartX3.TabIndex = 16;
this.stripChartX3.TimeInterval = System.TimeSpan.Parse("00:00:00");
this.stripChartX3.TimeStampFormat = null;
this.stripChartX3.XCursor.AutoInterval = true;
this.stripChartX3.XCursor.Color = System.Drawing.Color.DeepSkyBlue;
this.stripChartX3.XCursor.Interval = 0.001D;
this.stripChartX3.XCursor.Mode = SeeSharpTools.JY.GUI.StripChartXCursor.CursorMode.Zoom;
this.stripChartX3.XCursor.SelectionColor = System.Drawing.Color.LightGray;
this.stripChartX3.XCursor.Value = double.NaN;
this.stripChartX3.XDataType = SeeSharpTools.JY.GUI.StripChartX.XAxisDataType.Index;
this.stripChartX3.YCursor.AutoInterval = true;
this.stripChartX3.YCursor.Color = System.Drawing.Color.DeepSkyBlue;
this.stripChartX3.YCursor.Interval = 0.001D;
this.stripChartX3.YCursor.Mode = SeeSharpTools.JY.GUI.StripChartXCursor.CursorMode.Disabled;
this.stripChartX3.YCursor.SelectionColor = System.Drawing.Color.LightGray;
this.stripChartX3.YCursor.Value = double.NaN;
//
// trw1
//
this.trw1.BackColor = System.Drawing.Color.Transparent;
cpkModel1.CA = 0D;
cpkModel1.ChartType = null;
cpkModel1.GroupCP = 0D;
cpkModel1.GroupCPK = 0D;
cpkModel1.GroupCPL = 0D;
cpkModel1.GroupCPU = 0D;
cpkModel1.GroupPPM_LSL = 0D;
cpkModel1.GroupPPM_Total = 0D;
cpkModel1.GroupPPM_USL = 0D;
cpkModel1.GroupSTDEV = 0D;
cpkModel1.MaxValue = 0D;
cpkModel1.MeanVlaue = 0D;
cpkModel1.MeasuredPPM_LSL = 0D;
cpkModel1.MeasuredPPM_Total = 0D;
cpkModel1.MeasuredPPM_USL = 0D;
cpkModel1.MinValue = 0D;
cpkModel1.Neg3Sigma = 0D;
cpkModel1.Pos3Sigma = 0D;
cpkModel1.TotalNumber = 0;
cpkModel1.WholeCP = 0D;
cpkModel1.WholeCPK = 0D;
cpkModel1.WholeCPL = 0D;
cpkModel1.WholeCPU = 0D;
cpkModel1.WholePPM_LSL = 0D;
cpkModel1.WholePPM_Total = 0D;
cpkModel1.WholePPM_USL = 0D;
cpkModel1.WholeSTDEV = 0D;
this.trw1.CPKData = cpkModel1;
this.trw1.CpkPpkAcceptanceValue = 0D;
this.trw1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.trw1.Location = new System.Drawing.Point(5, 315);
this.trw1.LSLs = 0D;
this.trw1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.trw1.Name = "trw1";
this.trw1.Size = new System.Drawing.Size(526, 415);
this.trw1.SubgroupSize = 5;
this.trw1.TabIndex = 17;
this.trw1.USLs = 0D;
//
// chartControl
//
chartArea1.Name = "ChartArea1";
this.chartControl.ChartAreas.Add(chartArea1);
legend1.Name = "Legend1";
this.chartControl.Legends.Add(legend1);
this.chartControl.Location = new System.Drawing.Point(571, 44);
this.chartControl.Name = "chartControl";
series1.ChartArea = "ChartArea1";
series1.Legend = "Legend1";
series1.Name = "Series1";
this.chartControl.Series.Add(series1);
this.chartControl.Size = new System.Drawing.Size(785, 289);
this.chartControl.TabIndex = 18;
this.chartControl.Text = "chart1";
//
// FrmCpkCount
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackgroundImage = global::LargeSquareOne.Properties.Resources.BackGround;
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(1392, 734);
this.Controls.Add(this.chartControl);
this.Controls.Add(this.trw1);
this.Controls.Add(this.stripChartX3);
this.Controls.Add(this.stripChartX2);
this.Controls.Add(this.btn_Add);
this.DoubleBuffered = true;
this.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmCpkCount";
this.Text = "数据分析";
this.Load += new System.EventHandler(this.FrmCpkCount_Load);
((System.ComponentModel.ISupportInitialize)(this.chartControl)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Button btn_Add;
private SeeSharpTools.JY.GUI.StripChartX stripChartX2;
private SeeSharpTools.JY.GUI.StripChartX stripChartX3;
private trw trw1;
private System.Windows.Forms.DataVisualization.Charting.Chart chartControl;
}
}
+493
View File
@@ -0,0 +1,493 @@
using JinYuan.Models;
using Language;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting;
using System.Windows.Markup;
namespace LargeSquareOne
{
public partial class FrmCpkCount : MultiLanguageForm
{
public FrmCpkCount()
{
InitializeComponent();
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}
#endregion
private void FrmCpkCount_Load(object sender, EventArgs e)
{
}
private void btn_Add_Click(object sender, EventArgs e)
{
List<double> data= GetSPCData();
// 计算Xbar和R
double xbar = CalculateXbar(data);
double r = CalculateR(data);
// 计算控制限
double uclXbar = CalculateUCLXbar(data.Count);
double lclXbar = CalculateLCLXbar(data.Count);
double uclR = CalculateUCLR(data.Count);
double lclR = CalculateLCLR(data.Count);
// 清空图表
chartControl.Series.Clear();
double xmaxValue = Math.Max(xbar, Math.Max(uclXbar, uclR));
double xminValue = Math.Max(xbar, Math.Max(lclXbar, lclR));
chartControl.ChartAreas[0].AxisY.Maximum = xmaxValue + 2;
chartControl.ChartAreas[0].AxisY.Minimum = xminValue + 2;
//double rmaxValue = Math.Max(r, uclR);
//double rminValue = Math.Max(r, lclR);
//chartControl.ChartAreas[1].AxisY.Maximum = rmaxValue;
//chartControl.ChartAreas[1].AxisY.Minimum = rminValue;
// 绘制Xbar-R控制图
Series seriesXbar = new Series();
seriesXbar.ChartType = SeriesChartType.Line;
seriesXbar.Name = "Xbar";
Series seriesR = new Series();
seriesR.ChartType = SeriesChartType.Line;
seriesR.Name = "R";
// 添加数据点和控制限
chartControl.Series.Add(seriesXbar);
chartControl.Series.Add(seriesR);
for (int i = 0; i < data.Count; i++)
{
seriesXbar.Points.AddXY(i + 1, xbar);
seriesR.Points.AddXY(i + 1, r);
}
}
// 假设这是获取SPC数据的方法
private List<double> GetSPCData()
{
// 返回样本数据的List<double>
// 根据需要修改为实际的获取方法
return new List<double>{1.2, 1.3, 1.0, 2.5, 2.2, 2.8, 0.8, 0.9, 1.1};
}
/// <summary>
/// 对样本进行分组
/// </summary>
/// <param name="sampleData"></param>
/// <param name="groupSize"></param>
/// <returns></returns>
private List<List<double>> groupedData(List<double> sampleData, int groupSize = 3)
{
List<List<double>> groupedData = new List<List<double>>();
for (int i = 0; i < sampleData.Count; i += groupSize)
{
List<double> group = sampleData.Skip(i).Take(groupSize).ToList();
groupedData.Add(group);
}
return groupedData;
}
// 假设这是计算Xbar的方法
private double CalculateXbar(List<double> data)
{
// 根据输入的样本数据计算Xbar
// 根据需要修改为实际的计算方法
double sum = 0;
foreach (var value in data)
{
sum += value;
}
return sum / data.Count;
}
// 假设这是计算R的方法
private double CalculateR(List<double> data)
{
// 根据输入的样本数据计算R
// 根据需要修改为实际的计算方法
double max = data[0];
double min = data[0];
foreach (var value in data)
{
if (value > max)
max = value;
if (value < min)
min = value;
}
return max - min;
}
#region 根据样本大小计算UCL(Xbar)
// 这是计算UCL(Xbar)的方法
private double CalculateUCLXbar(int sampleSize)
{
// 根据样本大小计算UCL(Xbar)
// 根据需要修改为实际的计算方法
double Xbar_bar = 0; // 所有样本均值的平均值
double R_bar = 0; // 所有样本范围的平均值
double A2 = 0; // 控制系数
// 根据样本大小确定控制系数A2
if (sampleSize <= 25)
{
A2 = 0.577;
}
else if (sampleSize <= 100)
{
A2 = 0.425;
}
else if (sampleSize <= 500)
{
A2 = 0.372;
}
else
{
// 根据需要添加更多样本大小的控制系数A2
}
//对样本进行分组
List<double> data = GetSPCData();
// 计算每个样本的均值和范围
List<double> sampleMeans = CalculateSampleMeans(groupedData(data));
List<double> sampleRanges = CalculateSampleRanges(groupedData(data));
// 计算所有样本均值的平均值和所有样本范围的平均值
Xbar_bar = sampleMeans.Average();
R_bar = sampleRanges.Average();
// 计算UCL(Xbar)
double UCL_Xbar = Xbar_bar + (A2 * R_bar);
return UCL_Xbar;
}
// 根据需要实现计算样本均值的方法
private List<double> CalculateSampleMeans(List<List<double>> sampleData)
{
// 根据样本数据计算每个样本的均值,并返回一个包含所有样本均值的List<double>
// 根据实际的计算方法进行修改
List<double> sampleMeans = new List<double>();
foreach (var sample in sampleData)
{
double sum = 0;
int count = sample.Count;
foreach (var value in sample)
{
sum += value;
}
double mean = sum / count;
sampleMeans.Add(mean);
}
return sampleMeans;
}
// 根据需要实现计算样本范围的方法
private List<double> CalculateSampleRanges(List<List<double>> sampleData)
{
// 根据样本数据计算每个样本的范围,并返回一个包含所有样本范围的List<double>
// 根据实际的计算方法进行修改
List<double> sampleRanges = new List<double>();
foreach (var sample in sampleData)
{
double min = sample.Min();
double max = sample.Max();
double range = max - min;
sampleRanges.Add(range);
}
return sampleRanges;
}
#endregion
#region 计算LCL(Xbar)的方法
private double CalculateLCLXbar(int sampleSize)
{
// 根据样本大小计算LCL(Xbar)
// 根据需要修改为实际的计算方法
double Xbar_bar = 0; // 所有样本均值的平均值
double R_bar = 0; // 所有样本范围的平均值
double A2 = 0; // 控制系数
// 根据样本大小确定控制系数A2
if (sampleSize <= 25)
{
A2 = 0.577;
}
else if (sampleSize <= 100)
{
A2 = 0.425;
}
else if (sampleSize <= 500)
{
A2 = 0.372;
}
else
{
// 根据需要添加更多样本大小的控制系数A2
}
//对样本进行分组
List<double> data = GetSPCData();
// 计算每个样本的均值和范围
List<double> sampleMeans = CalculateSampleMeans(groupedData(data));
List<double> sampleRanges = CalculateSampleRanges(groupedData(data));
// 计算所有样本均值的平均值和所有样本范围的平均值
Xbar_bar = sampleMeans.Average();
R_bar = sampleRanges.Average();
// 计算LCL(Xbar)
double LCL_Xbar = Xbar_bar - (A2 * R_bar);
return LCL_Xbar;
}
/// <summary>
/// 根据样本大小选择合适的A2值
/// </summary>
/// <param name="sampleSize"></param>
/// <returns></returns>
private double GetA2(int sampleSize)
{
double A2 = 0; // 控制系数
//
if (sampleSize == 2)
{
A2 = 1.880;
}
else if (sampleSize == 3)
{
A2 = 1.023;
}
else if (sampleSize == 4)
{
A2 = 0.729;
}
else if (sampleSize == 5)
{
A2 = 0.577;
}
else if (sampleSize == 6)
{
A2 = 0.483;
}
else if (sampleSize > 6)
{
A2 = 3 / Math.Sqrt(sampleSize);
}
else
{
// 根据需要添加更多样本大小的A2值
}
return A2;
}
#endregion
#region 计算UCL(R)的方法
// 假设这是计算UCL(R)的方法
private double CalculateUCLR(int sampleSize)
{
// 根据样本大小计算UCL(R)
// 根据需要修改为实际的计算方法
double R_bar = 0; // 所有样本范围的平均值
double D4 = 0; // 控制系数
// 根据样本大小确定控制系数D4
D4 = GetD4(sampleSize);
//对样本进行分组
List<double> data = GetSPCData();
// 计算每个样本的范围
List<double> sampleRanges = CalculateSampleRanges(groupedData(data));
// 计算所有样本范围的平均值
R_bar = sampleRanges.Average();
// 计算UCL(R)
double UCL_R = D4 * R_bar;
return UCL_R;
}
#region 控制系数D4计算
//如果样本大小大于或等于2,但小于等于8,那么D4的值为2.282。
//如果样本大小大于8,但小于等于10,那么D4的值为2.115。
//如果样本大小大于10,但小于等于15,那么D4的值为2.004。
//如果样本大小大于15,但小于等于20,那么D4的值为1.924。
//如果样本大小大于20,但小于等于25,那么D4的值为1.864。
//如果样本大小大于25,但小于等于30,那么D4的值为1.816。
//对于更大的样本大小,您可以在SPC的相关文献或标准表中查找合适的D4的值。
private double GetD4(int sampleSize)
{
double D4 = 0; // 控制系数
// 根据样本大小选择合适的D4值
if (sampleSize >= 2 && sampleSize <= 8)
{
D4 = 2.282;
}
else if (sampleSize > 8 && sampleSize <= 10)
{
D4 = 2.115;
}
else if (sampleSize > 10 && sampleSize <= 15)
{
D4 = 2.004;
}
else if (sampleSize > 15 && sampleSize <= 20)
{
D4 = 1.924;
}
else if (sampleSize > 20 && sampleSize <= 25)
{
D4 = 1.864;
}
else if (sampleSize > 25 && sampleSize <= 30)
{
D4 = 1.816;
}
else
{
// 对于更大的样本大小,根据需要添加更多D4的值
}
return D4;
}
#endregion
#endregion
#region 计算LCL(R)的方法
private double CalculateLCLR(int sampleSize)
{
// 根据样本大小计算LCL(R)
// 根据需要修改为实际的计算方法
double R_bar = 0; // 所有样本范围的平均值
double D3 = 0; // 控制系数
// 根据样本大小确定控制系数D3
D3=GetD3(sampleSize);
//对样本进行分组
List<double> data = GetSPCData();
// 计算每个样本的范围
List<double> sampleRanges = CalculateSampleRanges(groupedData(data));
// 计算所有样本范围的平均值
R_bar = sampleRanges.Average();
// 计算LCL(R)
double LCL_R = D3 * R_bar;
return LCL_R;
}
/// <summary>
/// 根据样本大小选择合适的D3值
/// </summary>
/// <param name="sampleSize"></param>
/// <returns></returns>
///
///如果样本大小大于或等于2,但小于等于6,那么D3的值为0。
//如果样本大小为7,那么D3的值为0。
//如果样本大小大于7,但小于等于8,那么D3的值为0.076。
//如果样本大小大于8,但小于等于10,那么D3的值为0.136。
//如果样本大小大于10,但小于等于12,那么D3的值为0.184。
//如果样本大小大于12,但小于等于16,那么D3的值为0.223。
//如果样本大小大于16,但小于等于20,那么D3的值为0.251。
//如果样本大小大于20,但小于等于25,那么D3的值为0.277。
//对于更大的样本大小,您可以在SPC的相关文献或标准表中查找合适的D3的值。
private double GetD3(int sampleSize)
{
double D3 = 0; // 控制系数
if (sampleSize >= 2 && sampleSize <= 6)
{
D3 = 0;
}
else if (sampleSize == 7)
{
D3 = 0;
}
else if (sampleSize > 7 && sampleSize <= 8)
{
D3 = 0.076;
}
else if (sampleSize > 8 && sampleSize <= 10)
{
D3 = 0.136;
}
else if (sampleSize > 10 && sampleSize <= 12)
{
D3 = 0.184;
}
else if (sampleSize > 12 && sampleSize <= 16)
{
D3 = 0.223;
}
else if (sampleSize > 16 && sampleSize <= 20)
{
D3 = 0.251;
}
else if (sampleSize > 20 && sampleSize <= 25)
{
D3 = 0.277;
}
else
{
// 对于更大的样本大小,根据需要添加更多D3的值
}
return D3;
}
#endregion
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+762
View File
@@ -0,0 +1,762 @@
namespace LargeSquareOne
{
partial class FrmDataMonitor
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmDataMonitor));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.groupBoxEX3 = new JinYuan.ControlLib.GroupBoxEX();
this.dgvSteelShellData = new System.Windows.Forms.DataGridView();
this.GKChannel = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.GKTestTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.GKBarCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.GKResult = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.GKRemark = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.groupBoxEX4 = new JinYuan.ControlLib.GroupBoxEX();
this.dgvFeedingData = new System.Windows.Forms.DataGridView();
this.InChannelNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.InTestTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.RFID = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.InBarCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.InResult = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.InRemark = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.InFlag = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.groupBoxEX5 = new JinYuan.ControlLib.GroupBoxEX();
this.dgvBlankingData = new System.Windows.Forms.DataGridView();
this.OutChannelNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutTestTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutBarCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutCavityLeakageRateSetValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutProductLeakageRateSetValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutLeakPressureSetValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutCavityLeakageRateActualValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutProductLeakageRateActualValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutLeakPressureActualValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutPalletNumber = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutResult = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutInfo = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutRemark = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OutFlag = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.groupBoxEX2 = new JinYuan.ControlLib.GroupBoxEX();
this.lVConfigRange = new System.Windows.Forms.ListView();
this.clParaName = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.clMin = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.clMax = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.cUint = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.groupBoxEX1 = new JinYuan.ControlLib.GroupBoxEX();
this.rtb_Info = new System.Windows.Forms.RichTextBox();
this.tableLayoutPanel1.SuspendLayout();
this.groupBoxEX3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvSteelShellData)).BeginInit();
this.groupBoxEX4.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvFeedingData)).BeginInit();
this.groupBoxEX5.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvBlankingData)).BeginInit();
this.groupBoxEX2.SuspendLayout();
this.groupBoxEX1.SuspendLayout();
this.SuspendLayout();
//
// imageList1
//
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
this.imageList1.Images.SetKeyName(0, "info.png");
this.imageList1.Images.SetKeyName(1, "error.png");
this.imageList1.Images.SetKeyName(2, "warning.png");
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.BackColor = System.Drawing.Color.Transparent;
this.tableLayoutPanel1.ColumnCount = 3;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 31.59887F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 68.40114F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 816F));
this.tableLayoutPanel1.Controls.Add(this.groupBoxEX3, 2, 0);
this.tableLayoutPanel1.Controls.Add(this.groupBoxEX4, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.groupBoxEX5, 1, 2);
this.tableLayoutPanel1.Controls.Add(this.groupBoxEX2, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.groupBoxEX1, 0, 1);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(2);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 3;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 71.07843F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 28.92157F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 477F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 13F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(1874, 818);
this.tableLayoutPanel1.TabIndex = 0;
//
// groupBoxEX3
//
this.groupBoxEX3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.groupBoxEX3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.groupBoxEX3.Controls.Add(this.dgvSteelShellData);
this.groupBoxEX3.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBoxEX3.ForeColor = System.Drawing.Color.White;
this.groupBoxEX3.Location = new System.Drawing.Point(1059, 2);
this.groupBoxEX3.Margin = new System.Windows.Forms.Padding(2);
this.groupBoxEX3.Name = "groupBoxEX3";
this.groupBoxEX3.Padding = new System.Windows.Forms.Padding(2);
this.tableLayoutPanel1.SetRowSpan(this.groupBoxEX3, 2);
this.groupBoxEX3.Size = new System.Drawing.Size(813, 336);
this.groupBoxEX3.TabIndex = 16;
this.groupBoxEX3.TabStop = false;
this.groupBoxEX3.Text = "钢壳进站";
//
// dgvSteelShellData
//
this.dgvSteelShellData.AllowUserToAddRows = false;
this.dgvSteelShellData.AllowUserToDeleteRows = false;
this.dgvSteelShellData.AllowUserToResizeColumns = false;
this.dgvSteelShellData.AllowUserToResizeRows = false;
this.dgvSteelShellData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.dgvSteelShellData.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgvSteelShellData.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvSteelShellData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgvSteelShellData.ColumnHeadersHeight = 35;
this.dgvSteelShellData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgvSteelShellData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.GKChannel,
this.GKTestTime,
this.GKBarCode,
this.GKResult,
this.GKRemark});
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvSteelShellData.DefaultCellStyle = dataGridViewCellStyle2;
this.dgvSteelShellData.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvSteelShellData.EnableHeadersVisualStyles = false;
this.dgvSteelShellData.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgvSteelShellData.Location = new System.Drawing.Point(2, 21);
this.dgvSteelShellData.MultiSelect = false;
this.dgvSteelShellData.Name = "dgvSteelShellData";
this.dgvSteelShellData.ReadOnly = true;
this.dgvSteelShellData.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvSteelShellData.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dgvSteelShellData.RowHeadersWidth = 45;
this.dgvSteelShellData.RowTemplate.Height = 23;
this.dgvSteelShellData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
this.dgvSteelShellData.Size = new System.Drawing.Size(809, 313);
this.dgvSteelShellData.TabIndex = 10;
//
// GKChannel
//
this.GKChannel.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.GKChannel.DataPropertyName = "Channel";
this.GKChannel.HeaderText = "通道";
this.GKChannel.Name = "GKChannel";
this.GKChannel.ReadOnly = true;
this.GKChannel.Width = 61;
//
// GKTestTime
//
this.GKTestTime.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.GKTestTime.DataPropertyName = "TestTime";
this.GKTestTime.HeaderText = "时间";
this.GKTestTime.Name = "GKTestTime";
this.GKTestTime.ReadOnly = true;
this.GKTestTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.GKTestTime.Width = 42;
//
// GKBarCode
//
this.GKBarCode.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.GKBarCode.DataPropertyName = "BarCode";
this.GKBarCode.HeaderText = "钢壳码";
this.GKBarCode.Name = "GKBarCode";
this.GKBarCode.ReadOnly = true;
this.GKBarCode.Width = 75;
//
// GKResult
//
this.GKResult.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.GKResult.DataPropertyName = "Result";
this.GKResult.HeaderText = "结果";
this.GKResult.Name = "GKResult";
this.GKResult.ReadOnly = true;
this.GKResult.Width = 61;
//
// GKRemark
//
this.GKRemark.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.GKRemark.DataPropertyName = "Remark";
this.GKRemark.HeaderText = "备注";
this.GKRemark.Name = "GKRemark";
this.GKRemark.ReadOnly = true;
this.GKRemark.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.GKRemark.Width = 42;
//
// groupBoxEX4
//
this.groupBoxEX4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.groupBoxEX4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.groupBoxEX4.Controls.Add(this.dgvFeedingData);
this.groupBoxEX4.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBoxEX4.ForeColor = System.Drawing.Color.White;
this.groupBoxEX4.Location = new System.Drawing.Point(336, 2);
this.groupBoxEX4.Margin = new System.Windows.Forms.Padding(2);
this.groupBoxEX4.Name = "groupBoxEX4";
this.groupBoxEX4.Padding = new System.Windows.Forms.Padding(2);
this.tableLayoutPanel1.SetRowSpan(this.groupBoxEX4, 2);
this.groupBoxEX4.Size = new System.Drawing.Size(719, 336);
this.groupBoxEX4.TabIndex = 15;
this.groupBoxEX4.TabStop = false;
this.groupBoxEX4.Text = "卷芯进站";
//
// dgvFeedingData
//
this.dgvFeedingData.AllowUserToAddRows = false;
this.dgvFeedingData.AllowUserToDeleteRows = false;
this.dgvFeedingData.AllowUserToResizeColumns = false;
this.dgvFeedingData.AllowUserToResizeRows = false;
this.dgvFeedingData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.dgvFeedingData.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgvFeedingData.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle4.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle4.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvFeedingData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
this.dgvFeedingData.ColumnHeadersHeight = 35;
this.dgvFeedingData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgvFeedingData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.InChannelNo,
this.InTestTime,
this.RFID,
this.InBarCode,
this.InResult,
this.InRemark,
this.InFlag});
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle5.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle5.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvFeedingData.DefaultCellStyle = dataGridViewCellStyle5;
this.dgvFeedingData.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvFeedingData.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
this.dgvFeedingData.EnableHeadersVisualStyles = false;
this.dgvFeedingData.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgvFeedingData.Location = new System.Drawing.Point(2, 21);
this.dgvFeedingData.MultiSelect = false;
this.dgvFeedingData.Name = "dgvFeedingData";
this.dgvFeedingData.ReadOnly = true;
this.dgvFeedingData.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle6.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle6.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle6.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle6.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvFeedingData.RowHeadersDefaultCellStyle = dataGridViewCellStyle6;
this.dgvFeedingData.RowHeadersWidth = 45;
this.dgvFeedingData.RowTemplate.Height = 23;
this.dgvFeedingData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
this.dgvFeedingData.Size = new System.Drawing.Size(715, 313);
this.dgvFeedingData.TabIndex = 9;
this.dgvFeedingData.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgvFeedingData_RowPostPaint);
this.dgvFeedingData.RowPrePaint += new System.Windows.Forms.DataGridViewRowPrePaintEventHandler(this.dgvFeedingData_RowPrePaint);
//
// InChannelNo
//
this.InChannelNo.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.InChannelNo.DataPropertyName = "ChannelNo";
this.InChannelNo.HeaderText = "通道";
this.InChannelNo.Name = "InChannelNo";
this.InChannelNo.ReadOnly = true;
this.InChannelNo.Width = 61;
//
// InTestTime
//
this.InTestTime.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.InTestTime.DataPropertyName = "TestTime";
this.InTestTime.HeaderText = "时间";
this.InTestTime.Name = "InTestTime";
this.InTestTime.ReadOnly = true;
this.InTestTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.InTestTime.Width = 42;
this.InTestTime.Width = 42;
//
// RFID
//
this.InTestTime.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.InTestTime.DataPropertyName = "RFID";
this.RFID.HeaderText = "托杯码";
this.RFID.Name = "RFID";
this.RFID.ReadOnly = true;
this.InTestTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.InTestTime.Width = 42;
this.InTestTime.Width = 42;
//
// InBarCode
//
this.InBarCode.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.InBarCode.DataPropertyName = "BarCode";
this.InBarCode.HeaderText = "卷芯码";
this.InBarCode.Name = "InBarCode";
this.InBarCode.ReadOnly = true;
this.InBarCode.Width = 75;
//
// InResult
//
this.InResult.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.InResult.DataPropertyName = "Result";
this.InResult.HeaderText = "结果";
this.InResult.Name = "InResult";
this.InResult.ReadOnly = true;
this.InResult.Width = 61;
//
// InRemark
//
this.InRemark.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.InRemark.DataPropertyName = "Remark";
this.InRemark.HeaderText = "备注";
this.InRemark.Name = "InRemark";
this.InRemark.ReadOnly = true;
this.InRemark.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.InRemark.Width = 42;
//
// InFlag
//
this.InFlag.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.InFlag.DataPropertyName = "Flag";
this.InFlag.HeaderText = "是否上传MES";
this.InFlag.Name = "InFlag";
this.InFlag.ReadOnly = true;
this.InFlag.Width = 119;
//
// groupBoxEX5
//
this.groupBoxEX5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.groupBoxEX5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.tableLayoutPanel1.SetColumnSpan(this.groupBoxEX5, 2);
this.groupBoxEX5.Controls.Add(this.dgvBlankingData);
this.groupBoxEX5.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBoxEX5.ForeColor = System.Drawing.Color.White;
this.groupBoxEX5.Location = new System.Drawing.Point(336, 342);
this.groupBoxEX5.Margin = new System.Windows.Forms.Padding(2);
this.groupBoxEX5.Name = "groupBoxEX5";
this.groupBoxEX5.Padding = new System.Windows.Forms.Padding(2);
this.groupBoxEX5.Size = new System.Drawing.Size(1536, 474);
this.groupBoxEX5.TabIndex = 16;
this.groupBoxEX5.TabStop = false;
this.groupBoxEX5.Text = "电池出站";
//
// dgvBlankingData
//
this.dgvBlankingData.AllowUserToAddRows = false;
this.dgvBlankingData.AllowUserToDeleteRows = false;
this.dgvBlankingData.AllowUserToResizeColumns = false;
this.dgvBlankingData.AllowUserToResizeRows = false;
this.dgvBlankingData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.dgvBlankingData.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgvBlankingData.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle7.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle7.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle7.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvBlankingData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
this.dgvBlankingData.ColumnHeadersHeight = 35;
this.dgvBlankingData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgvBlankingData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.OutChannelNo,
this.OutTestTime,
this.OutBarCode,
this.OutCavityLeakageRateSetValue,
this.OutProductLeakageRateSetValue,
this.OutLeakPressureSetValue,
this.OutCavityLeakageRateActualValue,
this.OutProductLeakageRateActualValue,
this.OutLeakPressureActualValue,
this.OutPalletNumber,
this.OutResult,
this.OutInfo,
this.OutRemark,
this.OutFlag});
dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle8.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle8.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle8.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle8.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvBlankingData.DefaultCellStyle = dataGridViewCellStyle8;
this.dgvBlankingData.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvBlankingData.EnableHeadersVisualStyles = false;
this.dgvBlankingData.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgvBlankingData.Location = new System.Drawing.Point(2, 21);
this.dgvBlankingData.MultiSelect = false;
this.dgvBlankingData.Name = "dgvBlankingData";
this.dgvBlankingData.ReadOnly = true;
this.dgvBlankingData.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle9.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle9.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle9.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle9.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvBlankingData.RowHeadersDefaultCellStyle = dataGridViewCellStyle9;
this.dgvBlankingData.RowHeadersWidth = 50;
this.dgvBlankingData.RowTemplate.Height = 23;
this.dgvBlankingData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
this.dgvBlankingData.Size = new System.Drawing.Size(1532, 451);
this.dgvBlankingData.TabIndex = 12;
//
// OutChannelNo
//
this.OutChannelNo.DataPropertyName = "ChannelNo";
this.OutChannelNo.HeaderText = "通道";
this.OutChannelNo.Name = "OutChannelNo";
this.OutChannelNo.ReadOnly = true;
this.OutChannelNo.Width = 75;
//
// OutTestTime
//
this.OutTestTime.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.OutTestTime.DataPropertyName = "TestTime";
this.OutTestTime.HeaderText = "时间";
this.OutTestTime.Name = "OutTestTime";
this.OutTestTime.ReadOnly = true;
this.OutTestTime.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.OutTestTime.Width = 42;
//
// OutBarCode
//
this.OutBarCode.DataPropertyName = "BarCode";
this.OutBarCode.HeaderText = "卷芯码";
this.OutBarCode.Name = "OutBarCode";
this.OutBarCode.ReadOnly = true;
this.OutBarCode.Width = 180;
//
// OutCavityLeakageRateSetValue
//
this.OutCavityLeakageRateSetValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutCavityLeakageRateSetValue.DataPropertyName = "CavityLeakageRateSetValue";
this.OutCavityLeakageRateSetValue.HeaderText = "清腔漏率设定值";
this.OutCavityLeakageRateSetValue.Name = "OutCavityLeakageRateSetValue";
this.OutCavityLeakageRateSetValue.ReadOnly = true;
this.OutCavityLeakageRateSetValue.Width = 131;
//
// OutProductLeakageRateSetValue
//
this.OutProductLeakageRateSetValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutProductLeakageRateSetValue.DataPropertyName = "ProductLeakageRateSetValue";
this.OutProductLeakageRateSetValue.HeaderText = "产品漏率设定值";
this.OutProductLeakageRateSetValue.Name = "OutProductLeakageRateSetValue";
this.OutProductLeakageRateSetValue.ReadOnly = true;
this.OutProductLeakageRateSetValue.Width = 131;
//
// OutLeakPressureSetValue
//
this.OutLeakPressureSetValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutLeakPressureSetValue.DataPropertyName = "LeakPressureSetValue";
this.OutLeakPressureSetValue.HeaderText = "腔体真空设定值";
this.OutLeakPressureSetValue.Name = "OutLeakPressureSetValue";
this.OutLeakPressureSetValue.ReadOnly = true;
this.OutLeakPressureSetValue.Width = 131;
//
// OutCavityLeakageRateActualValue
//
this.OutCavityLeakageRateActualValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutCavityLeakageRateActualValue.DataPropertyName = "CavityLeakageRateActualValue";
this.OutCavityLeakageRateActualValue.HeaderText = "清腔漏率实际值";
this.OutCavityLeakageRateActualValue.Name = "OutCavityLeakageRateActualValue";
this.OutCavityLeakageRateActualValue.ReadOnly = true;
this.OutCavityLeakageRateActualValue.Width = 131;
//
// OutProductLeakageRateActualValue
//
this.OutProductLeakageRateActualValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutProductLeakageRateActualValue.DataPropertyName = "ProductLeakageRateActualValue";
this.OutProductLeakageRateActualValue.HeaderText = "产品漏率实际值";
this.OutProductLeakageRateActualValue.Name = "OutProductLeakageRateActualValue";
this.OutProductLeakageRateActualValue.ReadOnly = true;
this.OutProductLeakageRateActualValue.Width = 131;
//
// OutLeakPressureActualValue
//
this.OutLeakPressureActualValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutLeakPressureActualValue.DataPropertyName = "LeakPressureActualValue";
this.OutLeakPressureActualValue.HeaderText = "腔体真空实际值";
this.OutLeakPressureActualValue.Name = "OutLeakPressureActualValue";
this.OutLeakPressureActualValue.ReadOnly = true;
this.OutLeakPressureActualValue.Width = 131;
//
// OutPalletNumber
//
this.OutPalletNumber.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutPalletNumber.DataPropertyName = "PalletNumber";
this.OutPalletNumber.HeaderText = "托盘号";
this.OutPalletNumber.Name = "OutPalletNumber";
this.OutPalletNumber.ReadOnly = true;
this.OutPalletNumber.Width = 75;
//
// OutResult
//
this.OutResult.DataPropertyName = "Result";
this.OutResult.HeaderText = "综合结果";
this.OutResult.Name = "OutResult";
this.OutResult.ReadOnly = true;
this.OutResult.Width = 80;
//
// OutInfo
//
this.OutInfo.DataPropertyName = "Info";
this.OutInfo.HeaderText = "NG详情";
this.OutInfo.Name = "OutInfo";
this.OutInfo.ReadOnly = true;
this.OutInfo.Width = 120;
//
// OutRemark
//
this.OutRemark.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;
this.OutRemark.DataPropertyName = "Remark";
this.OutRemark.HeaderText = "备注";
this.OutRemark.Name = "OutRemark";
this.OutRemark.ReadOnly = true;
this.OutRemark.Width = 61;
//
// OutFlag
//
this.OutFlag.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.ColumnHeader;
this.OutFlag.DataPropertyName = "Flag";
this.OutFlag.HeaderText = "是否上传MES";
this.OutFlag.Name = "OutFlag";
this.OutFlag.ReadOnly = true;
this.OutFlag.Width = 119;
//
// groupBoxEX2
//
this.groupBoxEX2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.groupBoxEX2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.groupBoxEX2.Controls.Add(this.lVConfigRange);
this.groupBoxEX2.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBoxEX2.ForeColor = System.Drawing.Color.White;
this.groupBoxEX2.Location = new System.Drawing.Point(2, 2);
this.groupBoxEX2.Margin = new System.Windows.Forms.Padding(2);
this.groupBoxEX2.Name = "groupBoxEX2";
this.groupBoxEX2.Padding = new System.Windows.Forms.Padding(2);
this.groupBoxEX2.Size = new System.Drawing.Size(330, 238);
this.groupBoxEX2.TabIndex = 13;
this.groupBoxEX2.TabStop = false;
this.groupBoxEX2.Text = "参数";
//
// lVConfigRange
//
this.lVConfigRange.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.lVConfigRange.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.lVConfigRange.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.clParaName,
this.clMin,
this.clMax,
this.cUint});
this.lVConfigRange.Dock = System.Windows.Forms.DockStyle.Fill;
this.lVConfigRange.Font = new System.Drawing.Font("Cambria", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lVConfigRange.ForeColor = System.Drawing.Color.White;
this.lVConfigRange.HideSelection = false;
this.lVConfigRange.Location = new System.Drawing.Point(2, 21);
this.lVConfigRange.Margin = new System.Windows.Forms.Padding(2);
this.lVConfigRange.Name = "lVConfigRange";
this.lVConfigRange.OwnerDraw = true;
this.lVConfigRange.Size = new System.Drawing.Size(326, 215);
this.lVConfigRange.TabIndex = 2;
this.lVConfigRange.UseCompatibleStateImageBehavior = false;
this.lVConfigRange.View = System.Windows.Forms.View.Details;
this.lVConfigRange.DrawColumnHeader += new System.Windows.Forms.DrawListViewColumnHeaderEventHandler(this.lVConfigRange_DrawColumnHeader);
this.lVConfigRange.DrawItem += new System.Windows.Forms.DrawListViewItemEventHandler(this.lVConfigRange_DrawItem);
this.lVConfigRange.DrawSubItem += new System.Windows.Forms.DrawListViewSubItemEventHandler(this.lVConfigRange_DrawSubItem);
//
// clParaName
//
this.clParaName.Text = "参数项";
this.clParaName.Width = 105;
//
// clMin
//
this.clMin.Text = "最小值";
this.clMin.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.clMin.Width = 83;
//
// clMax
//
this.clMax.Text = "最大值";
this.clMax.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.clMax.Width = 83;
//
// cUint
//
this.cUint.Text = "单位";
this.cUint.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.cUint.Width = 42;
//
// groupBoxEX1
//
this.groupBoxEX1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.groupBoxEX1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.groupBoxEX1.Controls.Add(this.rtb_Info);
this.groupBoxEX1.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBoxEX1.ForeColor = System.Drawing.Color.White;
this.groupBoxEX1.Location = new System.Drawing.Point(2, 244);
this.groupBoxEX1.Margin = new System.Windows.Forms.Padding(2);
this.groupBoxEX1.Name = "groupBoxEX1";
this.groupBoxEX1.Padding = new System.Windows.Forms.Padding(2);
this.tableLayoutPanel1.SetRowSpan(this.groupBoxEX1, 2);
this.groupBoxEX1.Size = new System.Drawing.Size(330, 572);
this.groupBoxEX1.TabIndex = 12;
this.groupBoxEX1.TabStop = false;
this.groupBoxEX1.Text = "日志记录";
//
// rtb_Info
//
this.rtb_Info.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.rtb_Info.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.rtb_Info.Dock = System.Windows.Forms.DockStyle.Fill;
this.rtb_Info.ForeColor = System.Drawing.Color.White;
this.rtb_Info.Location = new System.Drawing.Point(2, 21);
this.rtb_Info.Margin = new System.Windows.Forms.Padding(2);
this.rtb_Info.Name = "rtb_Info";
this.rtb_Info.ReadOnly = true;
this.rtb_Info.Size = new System.Drawing.Size(326, 549);
this.rtb_Info.TabIndex = 1;
this.rtb_Info.Text = "";
//
// FrmDataMonitor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(1874, 818);
this.Controls.Add(this.tableLayoutPanel1);
this.Font = new System.Drawing.Font("微软雅黑", 10.5F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Name = "FrmDataMonitor";
this.Text = "数据监控";
this.Load += new System.EventHandler(this.FrmDataMonitor_Load);
this.tableLayoutPanel1.ResumeLayout(false);
this.groupBoxEX3.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvSteelShellData)).EndInit();
this.groupBoxEX4.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvFeedingData)).EndInit();
this.groupBoxEX5.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvBlankingData)).EndInit();
this.groupBoxEX2.ResumeLayout(false);
this.groupBoxEX1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private System.Windows.Forms.ColumnHeader clMin;
private System.Windows.Forms.ColumnHeader clMax;
private System.Windows.Forms.ColumnHeader cUint;
private System.Windows.Forms.ListView lVConfigRange;
private System.Windows.Forms.ColumnHeader clParaName;
private JinYuan.ControlLib.GroupBoxEX groupBoxEX1;
private JinYuan.ControlLib.GroupBoxEX groupBoxEX2;
private System.Windows.Forms.ImageList imageList1;
private JinYuan.ControlLib.GroupBoxEX groupBoxEX4;
private System.Windows.Forms.RichTextBox rtb_Info;
private JinYuan.ControlLib.GroupBoxEX groupBoxEX5;
private JinYuan.ControlLib.GroupBoxEX groupBoxEX3;
private System.Windows.Forms.DataGridViewTextBoxColumn GKChannel;
private System.Windows.Forms.DataGridViewTextBoxColumn GKTestTime;
private System.Windows.Forms.DataGridViewTextBoxColumn GKBarCode;
private System.Windows.Forms.DataGridViewTextBoxColumn GKResult;
private System.Windows.Forms.DataGridViewTextBoxColumn GKRemark;
private System.Windows.Forms.DataGridViewTextBoxColumn InChannelNo;
private System.Windows.Forms.DataGridViewTextBoxColumn InTestTime;
private System.Windows.Forms.DataGridViewTextBoxColumn RFID;
private System.Windows.Forms.DataGridViewTextBoxColumn InBarCode;
private System.Windows.Forms.DataGridViewTextBoxColumn InResult;
private System.Windows.Forms.DataGridViewTextBoxColumn InRemark;
private System.Windows.Forms.DataGridViewTextBoxColumn InFlag;
public System.Windows.Forms.DataGridView dgvFeedingData;
public System.Windows.Forms.DataGridView dgvSteelShellData;
public System.Windows.Forms.DataGridView dgvBlankingData;
private System.Windows.Forms.DataGridViewTextBoxColumn OutChannelNo;
private System.Windows.Forms.DataGridViewTextBoxColumn OutTestTime;
private System.Windows.Forms.DataGridViewTextBoxColumn OutBarCode;
private System.Windows.Forms.DataGridViewTextBoxColumn OutCavityLeakageRateSetValue;
private System.Windows.Forms.DataGridViewTextBoxColumn OutProductLeakageRateSetValue;
private System.Windows.Forms.DataGridViewTextBoxColumn OutLeakPressureSetValue;
private System.Windows.Forms.DataGridViewTextBoxColumn OutCavityLeakageRateActualValue;
private System.Windows.Forms.DataGridViewTextBoxColumn OutProductLeakageRateActualValue;
private System.Windows.Forms.DataGridViewTextBoxColumn OutLeakPressureActualValue;
private System.Windows.Forms.DataGridViewTextBoxColumn OutPalletNumber;
private System.Windows.Forms.DataGridViewTextBoxColumn OutResult;
private System.Windows.Forms.DataGridViewTextBoxColumn OutInfo;
private System.Windows.Forms.DataGridViewTextBoxColumn OutRemark;
private System.Windows.Forms.DataGridViewTextBoxColumn OutFlag;
}
}
+854
View File
@@ -0,0 +1,854 @@
using JinYuan.Helper;
using JinYuan.MES.Models;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using LargeSquareOne.ViewModel;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmDataMonitor : MultiLanguageForm
{
private System.Threading.Timer m_RefreshTimer;
/// <summary>
/// 上料条码电池数据显示
/// </summary>
private BindingList<AGearEntity> listTA = new BindingList<AGearEntity>();
/// <summary>
/// 下料电池数据绑定委托
/// </summary>
/// <param name="m"></param>
private BindingList<BGearEntity> listTB = new BindingList<BGearEntity>();
/// <summary>
/// 结构件料盘数据显示
/// </summary>
private BindingList<CGearEntity> listTC = new BindingList<CGearEntity>();
// 记录当前高亮状态
private int _highlightRow = -1; // -1 表示无整行高亮
private int _highlightCellRow = -1;
private int _highlightCellCol = -1;
public FrmDataMonitor()
{
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);
this.SetStyle(ControlStyles.UserPaint, true);
this.dgvFeedingData.AutoGenerateColumns = false;
this.dgvFeedingData.DataSource = listTA;
this.dgvFeedingData.DataError += delegate (object sender, DataGridViewDataErrorEventArgs e) { };
this.dgvFeedingData.DoubleBufferedDataGirdView(true);
this.dgvBlankingData.AutoGenerateColumns = false;
this.dgvBlankingData.DataSource = listTB;
this.dgvBlankingData.DataError += delegate (object sender, DataGridViewDataErrorEventArgs e) { };
this.dgvBlankingData.DoubleBufferedDataGirdView(true);
this.dgvSteelShellData.AutoGenerateColumns = false;
this.dgvSteelShellData.DataSource = listTC;
this.dgvSteelShellData.DataError += delegate (object sender, DataGridViewDataErrorEventArgs e) { };
this.dgvSteelShellData.DoubleBufferedDataGirdView(true);
this.lVConfigRange.DoubleBufferedListView(true);
this.FormClosing += (sender, e) =>
{
};
// 所有 DataGridView 设置为 CellSelect,禁用系统行选
SetDataGridViewStyle(dgvFeedingData);
SetDataGridViewStyle(dgvBlankingData);
SetDataGridViewStyle(dgvSteelShellData);
// 为所有 DataGridView 绑定统一事件
this.dgvFeedingData.CellClick += Dgv_CellClick;
this.dgvFeedingData.CellDoubleClick += Dgv_CellDoubleClick;
this.dgvBlankingData.CellClick += Dgv_CellClick;
this.dgvBlankingData.CellDoubleClick += Dgv_CellDoubleClick;
this.dgvSteelShellData.CellClick += Dgv_CellClick;
this.dgvSteelShellData.CellDoubleClick += Dgv_CellDoubleClick;
// 注册绘制事件
dgvFeedingData.CellPainting += Dgv_CellPainting;
dgvBlankingData.CellPainting += Dgv_CellPainting;
dgvSteelShellData.CellPainting += Dgv_CellPainting;
}
private void FrmDataMonitor_Load(object sender, EventArgs e)
{
dgvFeedingData.ClearSelection();
dgvBlankingData.ClearSelection();
//表头动态渲染
this.InitFrmDataMonitor();
}
private string CurrentTime
{
get { return DateTime.Now.ToString("HH:mm:ss"); }
}
/// <summary>
/// 刷新参数
/// </summary>
public void GetLocalParaData()
{
try
{
if (CommonMethods.paramlists != null)
{
System.Windows.Forms.ListViewItem listItem = null;
lVConfigRange.Items.Clear();
int j = 0;
foreach (var ProductPara in CommonMethods.paramlists) //遍历list集合
{
string strRemark = ProductPara.Remark;
string strName = ProductPara.ParaName;
listItem = new System.Windows.Forms.ListViewItem(CommonMethods.paramlists[j].Remark);
listItem.SubItems.Add("0");
listItem.SubItems.Add("0");
listItem.SubItems.Add("0");
lVConfigRange.Items.Add(listItem);
lVConfigRange.Items[j].SubItems[1].Text = ProductPara.ParaValueMin;
lVConfigRange.Items[j].SubItems[2].Text = ProductPara.ParaValueMax;
lVConfigRange.Items[j].SubItems[3].Text = ProductPara.Uint;
j++;
}
}
}
catch (Exception ex)
{
LogHelper.Instance.WriteEX("获取参数失败", ex);
}
}
/// <summary>
/// 加载MES参数
/// </summary>
public async Task<(bool Success, string msg)> GetMesParaDataAsync()
{
bool Success = false; // 操作结果
string Message = ""; // 消息
try
{
bool isChangeParam = false;
var nowDate = DateTime.Now;
string filePath = $@"{CommonMethods.strMesLogspath}\参数设定值请求\变更记录\{nowDate.Year}\{nowDate.Month}";
string fileName = $@"{nowDate.Day}.csv";
string fileTitle = "时间,机台,MES账户,更改参数名称,更改前参数值,更改后参数值";
string fileContent = string.Empty;
DataTable dt = new DataTable();
dt.Columns.Add("MES账户");
dt.Columns.Add("更改参数名称");
dt.Columns.Add("更改前参数值");
dt.Columns.Add("更改后参数值");
var (resultData, Mesage) = await CommonMethods.hbgMes.GetParamSetRequestAsync(
CommonMethods.mesConfig.DeviceParamChange,
CommonMethods.mesConfig.equipNum,
CommonMethods.mesConfig.siteCode,
CommonMethods.mesConfig.lineCode,
CommonMethods.mesConfig.MaterialCode,
CommonMethods.mesConfig.mesUserName);
//var resultData = JsonConvert.DeserializeObject<ParamReturnData>(Data);
if (!resultData.success)
{
// 获取参数未成功
Message = "获取MES参数不成功!";
return (Success, Message);
}
List<ParamList> NewParamlists = CommonMethods.paramlists;
for (int i = 0; i < resultData.total; i++)
{
List<RowsItem> rows = resultData.rows;
for (int j = 0; j < rows.Count; j++)
{
var tagList = rows[j].tagList;
for (int k = 0; k < NewParamlists.Count; k++)
{
for (int n = 0; n < rows[j].tagList.Count; n++)
{
if (NewParamlists[k].ParaName == tagList[n].tagCode)
{
string strMin = "0";
if (String.IsNullOrEmpty(tagList[n].minValue.Trim()) || tagList[n].minValue.Trim() == "null")
strMin = "0";
else
strMin = tagList[n].minValue.Trim();
if (NewParamlists[k].ParaValueMin != strMin)
{
fileContent += $"{nowDate.ToString("yyyy-MM-dd HH:mm:ss")},{CommonMethods.mesConfig.equipNum}," +
$"{CommonMethods.mesConfig.mesUserName},{tagList[n].tagDescription}最小值,{NewParamlists[k].ParaValueMin},{strMin}\n";
dt.Rows.Add(CommonMethods.mesConfig.mesUserName, $"{tagList[n].tagDescription}最小值", NewParamlists[k].ParaValueMin, strMin);
NewParamlists[k].ParaValueMin = strMin;
isChangeParam = true;
}
string strMax = "0";
if (String.IsNullOrEmpty(tagList[n].maxValue.Trim()) || tagList[n].maxValue.Trim() == "null")
strMax = "0";
else
strMax = tagList[n].maxValue.Trim();
if (NewParamlists[k].ParaValueMax != tagList[n].maxValue)
{
fileContent += $"{nowDate.ToString("yyyy-MM-dd HH:mm:ss")},{CommonMethods.mesConfig.equipNum}," +
$"{CommonMethods.mesConfig.mesUserName},{tagList[n].tagDescription}最大值,{NewParamlists[k].ParaValueMax},{strMax}\n";
dt.Rows.Add(CommonMethods.mesConfig.mesUserName, $"{tagList[n].tagDescription}最大值", NewParamlists[k].ParaValueMax, strMax);
NewParamlists[k].ParaValueMax = strMax;
isChangeParam = true;
}
}
}
}
if (isChangeParam)
{
CustomMessageBox customMessageBox = new CustomMessageBox(dt, $"当前MES下发参数与设备本地参数不一致,请确认是否使用MES下发参数");
if (customMessageBox.ShowDialog() == DialogResult.OK)
{
// 写csv文件
fileContent = fileContent.Substring(0, fileContent.Length - 1);
CSVHelper<object>.WriterCSV(filePath, fileName, fileTitle, fileContent);
CommonMethods.paramlists = NewParamlists;
int res = CommonMethods.db.Delete<ParamList>(it => it.ModelName == CommonMethods.paramlists[0].ModelName);
if (res > 0)
{
CommonMethods.db.AddReturnBool<ParamList>(CommonMethods.paramlists);
}
Message = "变更成功并保存";
Success = true;
}
else
{
Message = "取消变更,采用本地参数配置";
}
LogHelper.Instance.WriteLog(Message);
}
}
}
Success = true; // 操作成功
Message = "参数获取成功";
}
catch (Exception ex)
{
Message = "获取参数失败:" + ex.Message;
LogHelper.Instance.WriteEX("获取参数失败", ex);
}
return (Success, Message);
}
#region 显示卷芯上料数据
/// <summary>
/// 显示上料
/// </summary>
/// <param name="m"></param>
///
private readonly ConcurrentQueue<List<AGearEntity>> _dataQueue = new ConcurrentQueue<List<AGearEntity>>();
private volatile bool _isUpdating = false;
private const int MAX_ROWS = 500;
public void ShowFeedingData(List<AGearEntity> list)
{
if (list == null || list.Count == 0) return;
try
{
_dataQueue.Enqueue(list);
if (!_isUpdating)
{
ProcessDataQueue();
}
}
catch (Exception ex)
{
LogHelper.Instance.WriteEX(ex);
}
}
private void ProcessDataQueue()
{
if (_isUpdating) return;
try
{
_isUpdating = true;
while (_dataQueue.TryDequeue(out var data))
{
UpdateGrid(data);
}
}
finally
{
_isUpdating = false;
}
}
private void UpdateGrid(List<AGearEntity> data)
{
if (!dgvFeedingData.IsHandleCreated) return;
try
{
dgvFeedingData.BeginInvoke(new Action(() =>
{
try
{
dgvFeedingData.SuspendLayout();
// 检查是否需要清理数据
if (listTA.Count > MAX_ROWS)
{
listTA.Clear();
GC.Collect(0, GCCollectionMode.Optimized);
}
// 添加新数据
foreach (var item in data)
{
listTA.Add(item);
}
// 更新显示
int lastIndex = dgvFeedingData.Rows.Count - 1;
if (lastIndex >= 0)
{
// 更新序号
for (int i = 0; i < data.Count && (lastIndex - i) >= 0; i++)
{
dgvFeedingData.Rows[lastIndex - i].Cells[0].Value = lastIndex + 1 - i;
}
// 滚动到最新行
dgvFeedingData.FirstDisplayedScrollingRowIndex = lastIndex;
dgvFeedingData.CurrentCell = dgvFeedingData.Rows[lastIndex].Cells[0];
}
}
finally
{
dgvFeedingData.ResumeLayout();
}
}));
}
catch (Exception ex)
{
LogHelper.Instance.WriteEX(ex);
}
}
#endregion
#region 显示钢壳上料数据
/// <summary>
///显示钢壳上料数据
/// </summary>
/// <param name="m"></param>
///
#region 显示钢壳上料数据
private readonly ConcurrentQueue<List<CGearEntity>> _steelShellDataQueue = new ConcurrentQueue<List<CGearEntity>>();
private volatile bool _isSteelShellUpdating = false;
private const int MAX_ROWS2 = 50; // 最大行数
/// <summary>
/// 显示钢壳上料数据
/// </summary>
/// <param name="list"></param>
public void ShowSteelShellData(List<CGearEntity> list)
{
if (list == null || list.Count == 0) return;
try
{
_steelShellDataQueue.Enqueue(list); // 将数据加入队列
if (!_isSteelShellUpdating)
{
ProcessSteelShellDataQueue(); // 如果当前没有在处理队列,则开始处理
}
}
catch (Exception ex)
{
// 记录异常
LogHelper.Instance.WriteEX(ex);
}
}
/// <summary>
/// 处理钢壳上料数据队列
/// </summary>
private void ProcessSteelShellDataQueue()
{
if (_isSteelShellUpdating) return;
try
{
_isSteelShellUpdating = true;
while (_steelShellDataQueue.TryDequeue(out var data))
{
UpdateSteelShellGrid(data); // 更新 UI
}
}
finally
{
_isSteelShellUpdating = false;
}
}
/// <summary>
/// 更新钢壳上料数据的 UI 显示
/// </summary>
/// <param name="data"></param>
private void UpdateSteelShellGrid(List<CGearEntity> data)
{
if (!dgvSteelShellData.IsHandleCreated) return;
try
{
dgvSteelShellData.BeginInvoke(new Action(() =>
{
try
{
dgvSteelShellData.SuspendLayout();
// 检查是否需要清理数据
if (listTC.Count >= MAX_ROWS2)
{
listTC.Clear();
GC.Collect(0, GCCollectionMode.Optimized); // 触发垃圾回收
}
// 添加新数据
foreach (var item in data)
{
listTC.Add(item);
}
// 设置最新行为活动行 (当前行)
int lastIndex = dgvSteelShellData.Rows.Count - 1;
if (lastIndex >= 0)
{
dgvSteelShellData.CurrentCell = dgvSteelShellData.Rows[lastIndex].Cells[0];
}
}
finally
{
dgvSteelShellData.ResumeLayout();
}
}));
}
catch (Exception ex)
{
// 记录异常
LogHelper.Instance.WriteEX(ex);
}
}
#endregion
#endregion
#region 显示下料数据
/// <summary>
/// 显示下料数据
/// </summary>
/// <param name="list"></param>
public void ShowBankdingData(List<BGearEntity> list)
{
try
{
if (this.dgvBlankingData.InvokeRequired)
{
this.dgvBlankingData.Invoke(new Action<List<BGearEntity>>(ShowBankdingData), list);
}
else
{
if (list != null && list.Count > 0)
{
foreach (BGearEntity m in list)
{
listTB.Add(m);
}
if (listTB.Count >= 500)
{
listTB.Clear();
GC.Collect();
}
}
// 设置最新行为活动行 (当前行)
int index = this.dgvBlankingData.Rows.Count - 1;
this.dgvBlankingData.CurrentCell = this.dgvBlankingData.Rows[index].Cells[0];
for (int i = 0; i < list.Count; i++)
{
this.dgvBlankingData.Rows[index - i].Cells[0].Value = index + 1 - i;
}
}
}
catch (Exception ex)
{
//ShowLog("显示上料出现" + ex.Message, 1);
}
}
#endregion
#region 显示结构件料盘数据
/// <summary>
/// 显示结构件料盘数据
/// </summary>
/// <param name="list"></param>
public void ShowMaterialData(List<CGearEntity> list)
{
try
{
if (this.dgvSteelShellData.InvokeRequired)
{
this.dgvSteelShellData.Invoke(new Action<List<CGearEntity>>(ShowMaterialData), list);
}
else
{
if (list != null && list.Count > 0)
{
foreach (CGearEntity m in list)
{
listTC.Add(m);
}
if (listTC.Count >= 500)
{
listTC.Clear();
GC.Collect();
}
}
int index = this.dgvSteelShellData.Rows.Count - 1;
// 设置最新行为活动行 (当前行)
this.dgvSteelShellData.CurrentCell = this.dgvSteelShellData.Rows[index].Cells[1];
this.dgvSteelShellData.BeginEdit(true);
}
}
catch (Exception ex)
{
//ShowLog("显示上料出现" + ex.Message, 1);
}
}
#endregion
private void dgvFeedingData_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//显示序列号
DataGridViewHelper.DgvRowPostPaint(this.dgvFeedingData, e);
}
private void dgvFeedingData_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
//指定列字体颜色
DataGridViewHelper.DgvRowPrePaint(this.dgvFeedingData, "InResult", sender, e);
}
private void dgvBlankingData_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//显示序列号
DataGridViewHelper.DgvRowPostPaint(this.dgvBlankingData, e);
}
private void dgvBlankingData_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
//指定列字体颜色
DataGridViewHelper.DgvRowPrePaint(this.dgvBlankingData, "OutResult", sender, e);
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams parss = base.CreateParams;
parss.ExStyle |= 0x02000000;
return parss;
}
}
#endregion
#region
StringFormat sf = new StringFormat { Alignment = StringAlignment.Near, LineAlignment = StringAlignment.Center };//字体水平位置居左,垂直居中
private void lVConfigRange_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
{
Brush CustomizeBrushColor = new SolidBrush(Color.FromArgb(21, 77, 147));//自定义RGB
e.Graphics.FillRectangle(CustomizeBrushColor, e.Bounds); //设置背景颜色
Font font = new Font("微软雅黑", 12, FontStyle.Bold); //设置字体大小
e.Graphics.DrawString(e.Header.Text, font, Brushes.White, e.Bounds, sf); //设置字体颜色
}
private void lVConfigRange_DrawItem(object sender, DrawListViewItemEventArgs e)
{
e.DrawDefault = true; //采用系统默认方式绘制项
}
private void lVConfigRange_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
{
e.DrawDefault = true; //采用系统默认方式绘制项
}
#endregion
#region ListView日志记录
//public void AddDataMonitorLog(int level, string log)
//{
// if (level > 2)
// {
// level = 2;
// }
// if (level < 0)
// {
// level = 0;
// }
// if (this.lst_Info.InvokeRequired)
// {
// this.lst_Info.Invoke(new Action<int, string>(AddDataMonitorLog), level, log);
// }
// else
// {
// if (this.lst_Info.Items.Count > 1000)
// {
// this.lst_Info.Items.Clear();
// }
// System.Windows.Forms.ListViewItem item = new System.Windows.Forms.ListViewItem(" " + CurrentTime, level);
// item.SubItems.Add(log);
// this.lst_Info.Items.Add(item);
// //让最新的日志显示在最下面
// this.lst_Info.Items[this.lst_Info.Items.Count - 1].EnsureVisible();
// }
//}
#endregion
#region RichTextBox日志记录
public void AddDataMonitorLog(int type, string info)
{
if (this.rtb_Info.InvokeRequired)
{
this.rtb_Info.Invoke(new Action<int, string>(AddDataMonitorLog), type, info);
}
else
{
if (rtb_Info.Lines.Length > 200) //每当显示的通知数超过200行时,清除前面的150行
{
string[] strlines = new string[rtb_Info.Lines.Length - 150];
Array.ConstrainedCopy(rtb_Info.Lines, 50, strlines, 0, strlines.Length);
rtb_Info.Lines = strlines;
GC.Collect();
}
rtb_Info.SelectionStart = rtb_Info.Text.Length;
rtb_Info.SelectionLength = info.Length;
switch (type)
{
case 0:
rtb_Info.SelectionColor = Color.White;
break;
case 1:
rtb_Info.SelectionColor = Color.DarkOrange;
break;
case 2:
rtb_Info.SelectionColor = Color.Red;
break;
}
rtb_Info.AppendText(string.Format("时间:{0}-{1}\r\n", DateTime.Now.ToString("HH:mm:ss.fff"), info));
rtb_Info.SelectionStart = rtb_Info.Text.Length;
rtb_Info.SelectionLength = info.Length;
rtb_Info.Focus();
}
}
#endregion
#region ListBox日志记录
//public void AddDataMonitorLog(int level, string log)
//{
// Color color = Color.White;
// if (level > 2)
// {
// color= Color.Red;
// level = 2;
// }
// if (level < 0)
// {
// color = Color.White;
// level = 0;
// }
// if (this.lis_Info.InvokeRequired)
// {
// this.lis_Info.Invoke(new Action<int, string>(AddDataMonitorLog), level, log);
// }
// else
// {
// this.lis_Info.AddLog(log, color);
// this.lis_Info.SelectedIndex = this.lis_Info.Items.Count - 1;
// this.lis_Info.SelectedIndex = -1;
// //System.Windows.Forms.ListViewItem item = new System.Windows.Forms.ListViewItem(" " + CurrentTime, level);
// //item.SubItems.Add(log);
// //this.rtb_Info.Items.Add(item);
// ////让最新的日志显示在最下面
// //this.rtb_Info.Items[this.lst_Info.Items.Count - 1].EnsureVisible();
// }
//}
#endregion
private void SetDataGridViewStyle(DataGridView dgv)
{
dgv.SelectionMode = DataGridViewSelectionMode.CellSelect;
dgv.MultiSelect = false;
dgv.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.DisableResizing;
// 禁止用户通过点击行头选中整行(可选)
dgv.RowHeaderMouseClick += (s, e) => { ((DataGridView)s).ClearSelection(); };
}
/// <summary>
/// 单击单元格 → 选中整行
/// </summary>
private void Dgv_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0) return;
var dgv = sender as DataGridView;
_highlightRow = e.RowIndex; // 记录要高亮的行
_highlightCellRow = -1; // 清除单元格高亮
_highlightCellCol = -1;
//dgv.Rows[e.RowIndex].Selected = true; // 选中整行
dgv.CurrentCell = dgv.Rows[e.RowIndex].Cells[e.ColumnIndex]; // 设置当前单元格
// 清除系统选中状态(避免干扰绘制)
dgv.ClearSelection();
dgv.Invalidate(); // 触发重绘
// 复制单元格内容
var row = dgv.Rows[e.RowIndex];
var values = new List<string>();
foreach (DataGridViewCell cell in row.Cells)
{
values.Add(cell.Value?.ToString()??"");
}
Clipboard.SetText(string.Join("\t", values));
}
/// <summary>
/// 双击单元格 → 选中该单元格并复制内容
/// </summary>
private void Dgv_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0 || e.ColumnIndex < 0) return;
var dgv = sender as DataGridView;
_highlightRow = -1; // 清除整行高亮
_highlightCellRow = e.RowIndex;
_highlightCellCol = e.ColumnIndex;
// 清除行选中,只高亮当前单元格
dgv.CurrentCell = dgv.Rows[e.RowIndex].Cells[e.ColumnIndex];
//dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = true;
dgv.ClearSelection();
// 复制单元格内容
var cell = dgv.CurrentCell;
if (cell?.Value != null)
{
Clipboard.SetText(cell.Value.ToString());
}
dgv.Invalidate();
}
// 自定义绘制
private void Dgv_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
{
if (e.RowIndex < 0 || e.ColumnIndex < 0 || e.RowIndex >= ((DataGridView)sender).Rows.Count)
return;
var dgv = sender as DataGridView;
// 判断是否整行高亮
bool isRowHighlight = (_highlightRow == e.RowIndex && _highlightRow != -1);
// 判断是否单元格高亮
bool isCellHighlight = (_highlightCellRow == e.RowIndex && _highlightCellCol == e.ColumnIndex);
if (!isRowHighlight && !isCellHighlight)
{
// 非高亮区域,使用默认绘制
e.Paint(e.ClipBounds, DataGridViewPaintParts.All);
e.Handled = true;
return;
}
// 选择背景色
Color backColor, foreColor;
{
backColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
foreColor = System.Drawing.SystemColors.HighlightText; // 单元格高亮色
}
// 绘制单元格背景
using (SolidBrush brush = new SolidBrush(backColor))
{
e.Graphics.FillRectangle(brush, e.CellBounds);
}
// 绘制边框、内容等(除背景外)
DataGridViewPaintParts parts = DataGridViewPaintParts.All & ~DataGridViewPaintParts.Background;
e.Paint(e.ClipBounds, parts);
e.Handled = true;
}
}
}
+271
View File
@@ -0,0 +1,271 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 21</value>
</metadata>
<data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABE
DQAAAk1TRnQBSQFMAgEBAwEAAbABAgGwAQIBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABEAMAAQEBAAEgBgABEC4AAxUBHQMkATQDBQEGKAADHQEpAl4BZwHwATUBNgHPAf8BNQE2Ac8B/wE1
ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wNOAZagAAMTARkDZQHlA+YB/wPmAf8D5gH/A+YB/wPmAf8DRwGA
HAACUwFUAaoBNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2
Ac8B/wE1ATYBzwH/ATUBNgHPAf8UAANgAdsBKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEp
AeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/AzUBVVAA
AzgBWwPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/xQAAmEBawHrATUBNgHPAf8BNQE2
Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/
ATUBNgHPAf8BNQE2Ac8B/wwAAUYCRwGAASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHq
AfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/
ASkB6gH0Af9MAAM9AWgD5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wwA
A0gBhAE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/
ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/CAADOwFjASkB6gH0
Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wNdAcwEAAEpAeoB9AH/ASkB6gH0Af8BKQHq
AfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/0wAA+YB/wPmAf8D5gH/A+YB/wPmAf8DKgFABAADKgFA
A+YB/wPmAf8D5gH/A+YB/wNHAYAIAAE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/AxABFQE1
ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/AlMBVAGqBAABNQE2Ac8B/wE1ATYBzwH/ATUBNgHP
Af8DTgGWCAABKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHq
AfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8DPwFtSAADOAFbA+YB/wPm
Af8D5gH/A+YB/wPmAf8D5gH/BAAD5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8EAAMzAVEBNQE2Ac8B/wE1
ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wgAATUBNgHPAf8BNQE2Ac8B/wJTAVQBqgQAAlMBVAGqATUBNgHP
Af8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8IAAM1AVUBKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHq
AfQB/wEpAeoB9AH/AyoBQAEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af9MAAPm
Af8D5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8EAAPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wMFAQYCXQFf
Ac4BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/CAACUwFUAaoEAAJTAVQBqgE1
ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8MAAEpAeoB9AH/ASkB6gH0Af8BKQHq
AfQB/wEpAeoB9AH/ASkB6gH0Af8EAAEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/AygBPEwA
A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wQAA+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/AyQBNAJa
AW0B9QE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wgAAlMBVAGq
ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/DAADGQEjASkB6gH0
Af8BKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8EAAEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wFhAmsB61AA
A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/A1oBvwQAA+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/AxUBHQJe
AWQB4gE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8CUwFUAaoMAAE1ATYBzwH/
ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/xAAA14B0gEpAeoB9AH/ASkB6gH0
Af8BKQHqAfQB/wQAASkB6gH0Af8BKQHqAfQB/wEpAeoB9AH/AwkBC1AAA1oBvwPmAf8D5gH/A+YB/wPm
Af8D5gH/A0cBgANHAYAD5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8EAANVAawBNQE2Ac8B/wE1ATYBzwH/
ATUBNgHPAf8BNQE2Ac8B/wJTAVQBqgQAAlMBVAGqATUBNgHPAf8IAAE1ATYBzwH/ATUBNgHPAf8BNQE2
Ac8B/wE1ATYBzwH/ATUBNgHPAf8UAAEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wQAASkB6gH0Af8BKQHq
AfQB/wFXAlkBuVQAAxABFQPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wNHAYAD5gH/A+YB/wPmAf8D5gH/
A+YB/wNlAeUEAAMMAQ8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8CWgFqAfIEAAJTAVQBqgE1ATYBzwH/
ATUBNgHPAf8BNQE2Ac8B/wQAAwwBEAE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wJeAWcB8BQAAVECUgGh
ASkB6gH0Af8BKQHqAfQB/wM6AWABKQHqAfQB/wEpAeoB9AH/XAADZQHlA+YB/wPmAf8D5gH/A+YB/wNv
AfEDKgFAA+YB/wPmAf8D5gH/A+YB/wPmAf8DEwEZCAACZQFvAfEBNQE2Ac8B/wE1ATYBzwH/ATUBNgHP
Af8CWgFqAfIBNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2
Ac8B/wE1ATYBzwH/ATUBNgHPAf8DHQEpGAABKQHqAfQB/wEpAeoB9AH/ASkB6gH0Af8BKQHqAfQB/wNJ
AYhgAAPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8DOAFbEAABNQE2Ac8B/wE1
ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHP
Af8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8CUwFUAaocAANAAXABKQHqAfQB/wEpAeoB9AH/ASkB6gH0
Af9oAANlAeUD5gH/A+YB/wPmAf8D5gH/A+YB/wPmAf8D5gH/Az0BaBgAATUBNgHPAf8BNQE2Ac8B/wE1
ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHP
Af8CYQFrAeskAANNAZIBXQJgAdRwAAMOARIDVgGyA+YB/wPmAf8D5gH/AzgBWyQAAmUBbwHxATUBNgHP
Af8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8BNQE2Ac8B/wE1ATYBzwH/ATUBNgHPAf8DSAGE4AADCgEN
AlIBVAGoAl4BZAHiAloBbQH1Al0BXwHOAzMBUZQAAUIBTQE+BwABPgMAASgDAAFAAwABEAMAAQEBAAEB
BQABgBcAA/8BAAH+AT8B8AEPAv8CAAHwAQ8B4AEHAcABAQIAAeABBwHAAQMBgAEBAgABwAEDAYABAQGA
AYECAAHAAYEBgAEQAcABAQIAAYABgQEGASABwAEDAgACgAEDAUAB4AGDAgACgAEBAYAB4AGHAgACgAEB
AcAB8AGHAgABgAEBAQIBYAH4AY8CAAGAAQEBBAEgAfgBHwIAAcABAQGAAQAB/AEfAgAB4AEDAcABAQH8
AT8CAAHwAQcB4AEDAf4BfwIAAfgBHwHwAQcC/wIAAv8B+AEfAv8CAAs=
</value>
</data>
<metadata name="GKChannel.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="GKTestTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="GKBarCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="GKResult.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="GKRemark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InChannelNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InTestTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InRFID.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InBarCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InResult.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InRemark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="InFlag.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutChannelNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutTestTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutBarCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutCavityLeakageRateSetValue.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutProductLeakageRateSetValue.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutLeakPressureSetValue.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutCavityLeakageRateActualValue.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutProductLeakageRateActualValue.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutLeakPressureActualValue.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutPalletNumber.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutResult.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutInfo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutRemark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OutFlag.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="lVConfigRange.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value>
</metadata>
</root>
+474
View File
@@ -0,0 +1,474 @@
namespace LargeSquareOne
{
partial class FrmGroupConfig
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
this.panelExt1 = new JinYuan.ControlLib.PanelExt();
this.chk_IsFeedbackPlc = new System.Windows.Forms.CheckBox();
this.txtStart = new System.Windows.Forms.TextBox();
this.ckb_IsEnable = new System.Windows.Forms.CheckBox();
this.ckb_IsTiggerRead = new System.Windows.Forms.CheckBox();
this.dgv_Main = new System.Windows.Forms.DataGridView();
this.GroupName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Start = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Length = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Column1 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.Column3 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.Column2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.Remark = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.btn_Modify = new System.Windows.Forms.Button();
this.btn_Delete = new System.Windows.Forms.Button();
this.btn_Add = new System.Windows.Forms.Button();
this.txt_Remark = new System.Windows.Forms.TextBox();
this.label6 = new System.Windows.Forms.Label();
this.num_Length = new System.Windows.Forms.NumericUpDown();
this.label4 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.txt_GroupName = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.topPanel = new System.Windows.Forms.Panel();
this.btn_Close = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.panelExt1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgv_Main)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.num_Length)).BeginInit();
this.topPanel.SuspendLayout();
this.SuspendLayout();
//
// panelExt1
//
this.panelExt1.BackColor = System.Drawing.Color.Transparent;
this.panelExt1.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(32)))), ((int)(((byte)(79)))), ((int)(((byte)(150)))));
this.panelExt1.BordeWidth = 2;
this.panelExt1.BottomGap = 0;
this.panelExt1.Controls.Add(this.chk_IsFeedbackPlc);
this.panelExt1.Controls.Add(this.txtStart);
this.panelExt1.Controls.Add(this.ckb_IsEnable);
this.panelExt1.Controls.Add(this.ckb_IsTiggerRead);
this.panelExt1.Controls.Add(this.dgv_Main);
this.panelExt1.Controls.Add(this.btn_Modify);
this.panelExt1.Controls.Add(this.btn_Delete);
this.panelExt1.Controls.Add(this.btn_Add);
this.panelExt1.Controls.Add(this.txt_Remark);
this.panelExt1.Controls.Add(this.label6);
this.panelExt1.Controls.Add(this.num_Length);
this.panelExt1.Controls.Add(this.label4);
this.panelExt1.Controls.Add(this.label3);
this.panelExt1.Controls.Add(this.txt_GroupName);
this.panelExt1.Controls.Add(this.label2);
this.panelExt1.Controls.Add(this.topPanel);
this.panelExt1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelExt1.LeftGap = 0;
this.panelExt1.Location = new System.Drawing.Point(0, 0);
this.panelExt1.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.panelExt1.Name = "panelExt1";
this.panelExt1.RightGap = 0;
this.panelExt1.Size = new System.Drawing.Size(1054, 636);
this.panelExt1.TabIndex = 0;
this.panelExt1.TopGap = 0;
//
// chk_IsFeedbackPlc
//
this.chk_IsFeedbackPlc.AutoSize = true;
this.chk_IsFeedbackPlc.Checked = true;
this.chk_IsFeedbackPlc.CheckState = System.Windows.Forms.CheckState.Checked;
this.chk_IsFeedbackPlc.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.chk_IsFeedbackPlc.ForeColor = System.Drawing.Color.White;
this.chk_IsFeedbackPlc.Location = new System.Drawing.Point(777, 57);
this.chk_IsFeedbackPlc.Name = "chk_IsFeedbackPlc";
this.chk_IsFeedbackPlc.Size = new System.Drawing.Size(157, 26);
this.chk_IsFeedbackPlc.TabIndex = 51;
this.chk_IsFeedbackPlc.Text = "是否需要反馈结果";
this.chk_IsFeedbackPlc.UseVisualStyleBackColor = true;
//
// txtStart
//
this.txtStart.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txtStart.Location = new System.Drawing.Point(345, 56);
this.txtStart.Name = "txtStart";
this.txtStart.Size = new System.Drawing.Size(96, 29);
this.txtStart.TabIndex = 50;
this.txtStart.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// ckb_IsEnable
//
this.ckb_IsEnable.AutoSize = true;
this.ckb_IsEnable.Checked = true;
this.ckb_IsEnable.CheckState = System.Windows.Forms.CheckState.Checked;
this.ckb_IsEnable.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.ckb_IsEnable.ForeColor = System.Drawing.Color.White;
this.ckb_IsEnable.Location = new System.Drawing.Point(949, 56);
this.ckb_IsEnable.Name = "ckb_IsEnable";
this.ckb_IsEnable.Size = new System.Drawing.Size(93, 26);
this.ckb_IsEnable.TabIndex = 49;
this.ckb_IsEnable.Text = "是否启用";
this.ckb_IsEnable.UseVisualStyleBackColor = true;
//
// ckb_IsTiggerRead
//
this.ckb_IsTiggerRead.AutoSize = true;
this.ckb_IsTiggerRead.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.ckb_IsTiggerRead.ForeColor = System.Drawing.Color.White;
this.ckb_IsTiggerRead.Location = new System.Drawing.Point(620, 57);
this.ckb_IsTiggerRead.Name = "ckb_IsTiggerRead";
this.ckb_IsTiggerRead.Size = new System.Drawing.Size(141, 26);
this.ckb_IsTiggerRead.TabIndex = 48;
this.ckb_IsTiggerRead.Text = "是否为触发读取";
this.ckb_IsTiggerRead.UseVisualStyleBackColor = true;
//
// dgv_Main
//
this.dgv_Main.AllowUserToAddRows = false;
this.dgv_Main.AllowUserToDeleteRows = false;
this.dgv_Main.AllowUserToResizeRows = false;
this.dgv_Main.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.dgv_Main.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.dgv_Main.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Main.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgv_Main.ColumnHeadersHeight = 45;
this.dgv_Main.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgv_Main.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.GroupName,
this.Start,
this.Length,
this.Column1,
this.Column3,
this.Column2,
this.Remark});
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_Main.DefaultCellStyle = dataGridViewCellStyle2;
this.dgv_Main.EnableHeadersVisualStyles = false;
this.dgv_Main.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgv_Main.Location = new System.Drawing.Point(19, 164);
this.dgv_Main.Name = "dgv_Main";
this.dgv_Main.ReadOnly = true;
this.dgv_Main.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Main.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dgv_Main.RowHeadersWidth = 55;
this.dgv_Main.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
this.dgv_Main.RowTemplate.Height = 40;
this.dgv_Main.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgv_Main.Size = new System.Drawing.Size(1021, 451);
this.dgv_Main.TabIndex = 15;
this.dgv_Main.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv_Main_CellClick);
this.dgv_Main.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.dgv_Main_CellFormatting);
this.dgv_Main.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgv_Main_RowPostPaint);
//
// GroupName
//
this.GroupName.DataPropertyName = "GroupName";
this.GroupName.HeaderText = "通信组名称";
this.GroupName.Name = "GroupName";
this.GroupName.ReadOnly = true;
this.GroupName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.GroupName.Width = 140;
//
// Start
//
this.Start.DataPropertyName = "Start";
this.Start.HeaderText = "起始地址";
this.Start.Name = "Start";
this.Start.ReadOnly = true;
this.Start.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.Start.Width = 120;
//
// Length
//
this.Length.DataPropertyName = "Length";
this.Length.HeaderText = "长度";
this.Length.Name = "Length";
this.Length.ReadOnly = true;
this.Length.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// Column1
//
this.Column1.DataPropertyName = "IsTiggerRead";
this.Column1.HeaderText = "是否为触发读取";
this.Column1.Name = "Column1";
this.Column1.ReadOnly = true;
//
// Column3
//
this.Column3.DataPropertyName = "IsFeedbackPlc";
this.Column3.HeaderText = "是否需要反馈结果";
this.Column3.Name = "Column3";
this.Column3.ReadOnly = true;
this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.True;
this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
//
// Column2
//
this.Column2.DataPropertyName = "IsActive";
this.Column2.HeaderText = "启用";
this.Column2.Name = "Column2";
this.Column2.ReadOnly = true;
this.Column2.Resizable = System.Windows.Forms.DataGridViewTriState.True;
this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
//
// Remark
//
this.Remark.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.Remark.DataPropertyName = "Remark";
this.Remark.HeaderText = "备注说明";
this.Remark.Name = "Remark";
this.Remark.ReadOnly = true;
this.Remark.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// btn_Modify
//
this.btn_Modify.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Modify.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Modify.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Modify.ForeColor = System.Drawing.Color.White;
this.btn_Modify.Location = new System.Drawing.Point(832, 104);
this.btn_Modify.Name = "btn_Modify";
this.btn_Modify.Size = new System.Drawing.Size(102, 36);
this.btn_Modify.TabIndex = 14;
this.btn_Modify.Text = "修改通信组";
this.btn_Modify.UseVisualStyleBackColor = false;
this.btn_Modify.Click += new System.EventHandler(this.btn_Modify_Click);
//
// btn_Delete
//
this.btn_Delete.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Delete.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Delete.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Delete.ForeColor = System.Drawing.Color.White;
this.btn_Delete.Location = new System.Drawing.Point(726, 104);
this.btn_Delete.Name = "btn_Delete";
this.btn_Delete.Size = new System.Drawing.Size(101, 36);
this.btn_Delete.TabIndex = 13;
this.btn_Delete.Text = "删除通信组";
this.btn_Delete.UseVisualStyleBackColor = false;
this.btn_Delete.Click += new System.EventHandler(this.btn_Delete_Click);
//
// btn_Add
//
this.btn_Add.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Add.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Add.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Add.ForeColor = System.Drawing.Color.White;
this.btn_Add.Location = new System.Drawing.Point(620, 104);
this.btn_Add.Name = "btn_Add";
this.btn_Add.Size = new System.Drawing.Size(101, 36);
this.btn_Add.TabIndex = 12;
this.btn_Add.Text = "新增通信组";
this.btn_Add.UseVisualStyleBackColor = false;
this.btn_Add.Click += new System.EventHandler(this.btn_Add_Click);
//
// txt_Remark
//
this.txt_Remark.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txt_Remark.Location = new System.Drawing.Point(111, 108);
this.txt_Remark.Name = "txt_Remark";
this.txt_Remark.Size = new System.Drawing.Size(491, 29);
this.txt_Remark.TabIndex = 11;
this.txt_Remark.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// label6
//
this.label6.AutoSize = true;
this.label6.ForeColor = System.Drawing.Color.White;
this.label6.Location = new System.Drawing.Point(15, 113);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(74, 21);
this.label6.TabIndex = 10;
this.label6.Text = "备注说明";
//
// num_Length
//
this.num_Length.Location = new System.Drawing.Point(510, 55);
this.num_Length.Maximum = new decimal(new int[] {
65535,
0,
0,
0});
this.num_Length.Name = "num_Length";
this.num_Length.Size = new System.Drawing.Size(92, 29);
this.num_Length.TabIndex = 7;
this.num_Length.Value = new decimal(new int[] {
100,
0,
0,
0});
//
// label4
//
this.label4.AutoSize = true;
this.label4.ForeColor = System.Drawing.Color.White;
this.label4.Location = new System.Drawing.Point(462, 60);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(42, 21);
this.label4.TabIndex = 6;
this.label4.Text = "长度";
//
// label3
//
this.label3.AutoSize = true;
this.label3.ForeColor = System.Drawing.Color.White;
this.label3.Location = new System.Drawing.Point(266, 60);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(74, 21);
this.label3.TabIndex = 4;
this.label3.Text = "起始地址";
//
// txt_GroupName
//
this.txt_GroupName.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txt_GroupName.Location = new System.Drawing.Point(111, 55);
this.txt_GroupName.Name = "txt_GroupName";
this.txt_GroupName.Size = new System.Drawing.Size(125, 29);
this.txt_GroupName.TabIndex = 3;
this.txt_GroupName.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// label2
//
this.label2.AutoSize = true;
this.label2.ForeColor = System.Drawing.Color.White;
this.label2.Location = new System.Drawing.Point(15, 60);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(90, 21);
this.label2.TabIndex = 2;
this.label2.Text = "通信组名称";
//
// topPanel
//
this.topPanel.Controls.Add(this.btn_Close);
this.topPanel.Controls.Add(this.label1);
this.topPanel.Dock = System.Windows.Forms.DockStyle.Top;
this.topPanel.Location = new System.Drawing.Point(0, 0);
this.topPanel.Name = "topPanel";
this.topPanel.Size = new System.Drawing.Size(1054, 49);
this.topPanel.TabIndex = 0;
this.topPanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.topPanel.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// btn_Close
//
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(29)))), ((int)(((byte)(84)))));
this.btn_Close.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 15.5F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(1008, 8);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 1;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = true;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// label1
//
this.label1.AutoSize = true;
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.Location = new System.Drawing.Point(15, 14);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(90, 21);
this.label1.TabIndex = 0;
this.label1.Text = "通信组配置";
//
// FrmGroupConfig
//
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(1054, 636);
this.Controls.Add(this.panelExt1);
this.DoubleBuffered = true;
this.Font = new System.Drawing.Font("微软雅黑", 12F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.Name = "FrmGroupConfig";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmGroupConfig";
this.panelExt1.ResumeLayout(false);
this.panelExt1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dgv_Main)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.num_Length)).EndInit();
this.topPanel.ResumeLayout(false);
this.topPanel.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private JinYuan.ControlLib.PanelExt panelExt1;
private System.Windows.Forms.Panel topPanel;
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox txt_Remark;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.NumericUpDown num_Length;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.TextBox txt_GroupName;
private System.Windows.Forms.DataGridView dgv_Main;
private System.Windows.Forms.Button btn_Modify;
private System.Windows.Forms.Button btn_Delete;
private System.Windows.Forms.Button btn_Add;
private System.Windows.Forms.CheckBox ckb_IsTiggerRead;
private System.Windows.Forms.CheckBox ckb_IsEnable;
private System.Windows.Forms.TextBox txtStart;
private System.Windows.Forms.CheckBox chk_IsFeedbackPlc;
private System.Windows.Forms.DataGridViewTextBoxColumn GroupName;
private System.Windows.Forms.DataGridViewTextBoxColumn Start;
private System.Windows.Forms.DataGridViewTextBoxColumn Length;
private System.Windows.Forms.DataGridViewCheckBoxColumn Column1;
private System.Windows.Forms.DataGridViewCheckBoxColumn Column3;
private System.Windows.Forms.DataGridViewCheckBoxColumn Column2;
private System.Windows.Forms.DataGridViewTextBoxColumn Remark;
}
}
+291
View File
@@ -0,0 +1,291 @@
using JinYuan.Helper;
using JinYuan.Models;
using Language;
using MiniExcelLibs;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using System.Windows.Forms;
using System.Xml.Schema;
namespace LargeSquareOne
{
public partial class FrmGroupConfig : MultiLanguageForm
{
public FrmGroupConfig(PLCConfig plc)
{
InitializeComponent();
//this.cmb_StoreArea.DataSource = new string[] { "输入线圈", "输出线圈", "输入寄存器", "输出寄存器" };
this.dgv_Main.AutoGenerateColumns = false;
currentPlc = plc;
TotalGroups = GetALLGroups();
RefreshGroup();
}
private string groupPath = Application.StartupPath + "\\Config\\Group.xlsx";
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}
#endregion
private List<Group> TotalGroups = new List<Group>();
private PLCConfig currentPlc;
/// <summary>
/// 获取所有通信组
/// </summary>
/// <returns></returns>
private List<Group> GetALLGroups()
{
try
{
return MiniExcel.Query<Group>(groupPath).ToList();
}
catch (Exception)
{
return new List<Group>();
}
}
/// <summary>
/// 更新通信组集合
/// </summary>
private void RefreshGroup()
{
if (TotalGroups != null && TotalGroups.Count > 0)
{
this.dgv_Main.DataSource = null;
this.dgv_Main.DataSource = TotalGroups;
}
}
#region 无边框拖动
private Point mPoint;
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
mPoint = new Point(e.X, e.Y);
}
private void Panel_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);
}
}
#endregion
/// <summary>
/// 判断组名称是否存在
/// </summary>
/// <param name="groupName"></param>
/// <returns></returns>
private bool IsGroupNameExits(string groupName)
{
return TotalGroups.FindAll(c => c.GroupName == groupName).ToList().Count < 0;
}
#region 增删改通信组
/// <summary>
/// 增加
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Add_Click(object sender, EventArgs e)
{
string groupName =this.txt_GroupName.Text.Trim();
if (groupName.Length==0)
{
new FrmMsgBoxOutWithAck(2,"通信组名称不能为空!", "添加通信组").Show();
return;
}
if (IsGroupNameExits(groupName))
{
new FrmMsgBoxOutWithAck(2, "通信组名称已存在!", "添加通信组").Show();
return;
}
TotalGroups.Add(new Group()
{
GroupName=this.txt_GroupName.Text,
Start=this.txtStart.Text,
Length = Convert.ToUInt16(this.num_Length.Value),
IsTiggerRead = this.ckb_IsTiggerRead.Checked ?true : false,
IsFeedbackPlc= this.chk_IsFeedbackPlc.Checked ? true : false,
IsActive = this.ckb_IsEnable.Checked ? true : false,
Remark =this.txt_Remark.Text.Trim()
});
try
{
MiniExcel.SaveAs(groupPath, TotalGroups, overwriteFile: true);
new FrmMsgBoxOutWithAck(1,"添加通信组成功", "添加通信组").Show();
//刷新数据
RefreshGroup();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3,"添加通信组失败:"+ex.Message, "添加通信组").Show();
}
}
/// <summary>
/// 删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Delete_Click(object sender, EventArgs e)
{
string groupName = this.txt_GroupName.Text.Trim();
if (IsGroupNameExits(groupName))
{
new FrmMsgBoxOutWithAck(2, "通信组名称不存在!", "删除通信组").Show();
return;
}
TotalGroups.RemoveAll(c => c.GroupName == groupName);
try
{
MiniExcel.SaveAs(groupPath, TotalGroups, overwriteFile: true);
//刷新数据
RefreshGroup();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3, "删除通信组失败:" + ex.Message, "删除通信组").Show();
}
}
/// <summary>
/// 修改
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Modify_Click(object sender, EventArgs e)
{
string groupName = this.txt_GroupName.Text.Trim();
if (IsGroupNameExits(groupName))
{
new FrmMsgBoxOutWithAck(2, "通信组名称已存在!", "修改通信组").Show();
return;
}
var group =TotalGroups.Find(c=>c.GroupName == groupName);
group.Start = this.txtStart.Text;
group.Length = Convert.ToUInt16(this.num_Length.Value);
group.IsTiggerRead = this.ckb_IsTiggerRead.Checked ? true: false;
group.IsFeedbackPlc = this.chk_IsFeedbackPlc.Checked ? true : false;
group.IsActive = this.ckb_IsEnable.Checked ? true : false;
group.Remark = this.txt_Remark.Text.Trim();
try
{
MiniExcel.SaveAs(groupPath, TotalGroups, overwriteFile: true);
//刷新数据
RefreshGroup();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3, "修改通信组失败:" + ex.Message, "修改通信组").Show();
}
}
#endregion
private void btn_Close_Click(object sender, EventArgs e)
{
this.Close();
}
/// <summary>
/// 行号
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Main_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
DataGridViewHelper.DgvRowPostPaint((DataGridView)sender, e);
}
/// <summary>
/// 默认为空显示特定字符
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Main_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (e.ColumnIndex >= 0&&e.RowIndex>=0)
{
object value = this.dgv_Main.Rows[e.RowIndex].Cells[e.ColumnIndex].Value;
if (value == null||value.ToString().Length==0)
{
e.Value = "---";
};
}
}
/// <summary>
/// 选中行显示
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Main_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex>=0)
{
UpdateGroup(TotalGroups[e.RowIndex]);
}
}
private void UpdateGroup(Group group)
{
if (group!=null)
{
this.txt_GroupName.Text = group.GroupName;
this.txtStart.Text = group.Start;
this.num_Length.Value = group.Length;
this.ckb_IsTiggerRead.Checked = group.IsTiggerRead;
this.chk_IsFeedbackPlc.Checked = group.IsFeedbackPlc;
this.ckb_IsEnable.Checked = group.IsActive;
this.txt_Remark.Text = group.Remark;
}
}
}
}
+141
View File
@@ -0,0 +1,141 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="GroupName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Start.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Length.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Remark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+107
View File
@@ -0,0 +1,107 @@
namespace LargeSquareOne
{
partial class FrmHelper
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.lbl_TitleBar = new System.Windows.Forms.Label();
this.btn_Close = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
this.SuspendLayout();
//
// pictureBox3
//
this.pictureBox3.BackColor = System.Drawing.Color.Transparent;
this.pictureBox3.Image = global::LargeSquareOne.Properties.Resources.eve;
this.pictureBox3.Location = new System.Drawing.Point(-1, -2);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(153, 34);
this.pictureBox3.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox3.TabIndex = 12;
this.pictureBox3.TabStop = false;
//
// lbl_TitleBar
//
this.lbl_TitleBar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lbl_TitleBar.BackColor = System.Drawing.Color.Transparent;
this.lbl_TitleBar.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbl_TitleBar.ForeColor = System.Drawing.Color.White;
this.lbl_TitleBar.Location = new System.Drawing.Point(33, 107);
this.lbl_TitleBar.Name = "lbl_TitleBar";
this.lbl_TitleBar.Size = new System.Drawing.Size(391, 29);
this.lbl_TitleBar.TabIndex = 13;
this.lbl_TitleBar.Text = "本系统由惠州金源精密自动化设备有限公司开发。";
this.lbl_TitleBar.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// btn_Close
//
this.btn_Close.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(30)))), ((int)(((byte)(78)))));
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatAppearance.MouseDownBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 14F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(413, 2);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 14;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = false;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// FrmHelper
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(448, 291);
this.Controls.Add(this.btn_Close);
this.Controls.Add(this.lbl_TitleBar);
this.Controls.Add(this.pictureBox3);
this.DoubleBuffered = true;
this.Font = new System.Drawing.Font("微软雅黑", 10.5F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.Name = "FrmHelper";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "帮助";
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.PictureBox pictureBox3;
private System.Windows.Forms.Label lbl_TitleBar;
private System.Windows.Forms.Button btn_Close;
}
}
+26
View File
@@ -0,0 +1,26 @@
using Language;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmHelper : MultiLanguageForm
{
public FrmHelper()
{
InitializeComponent();
}
private void btn_Close_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+199
View File
@@ -0,0 +1,199 @@
namespace LargeSquareOne
{
partial class FrmLogin
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmLogin));
this.txt_LoginPwd = new System.Windows.Forms.TextBox();
this.txt_LoginName = new System.Windows.Forms.TextBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.SwitchLanguage = new AntdUI.Dropdown();
this.pageHeader1 = new AntdUI.PageHeader();
this.btn_Login = new AntdUI.Button();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
this.pageHeader1.SuspendLayout();
this.SuspendLayout();
//
// txt_LoginPwd
//
this.txt_LoginPwd.BackColor = System.Drawing.Color.White;
this.txt_LoginPwd.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txt_LoginPwd.Font = new System.Drawing.Font("Microsoft JhengHei UI", 24F);
this.txt_LoginPwd.ForeColor = System.Drawing.Color.Black;
this.txt_LoginPwd.Location = new System.Drawing.Point(515, 281);
this.txt_LoginPwd.Name = "txt_LoginPwd";
this.txt_LoginPwd.PasswordChar = '*';
this.txt_LoginPwd.Size = new System.Drawing.Size(276, 41);
this.txt_LoginPwd.TabIndex = 1;
//
// txt_LoginName
//
this.txt_LoginName.BackColor = System.Drawing.Color.White;
this.txt_LoginName.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txt_LoginName.Font = new System.Drawing.Font("Microsoft JhengHei UI", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.txt_LoginName.ForeColor = System.Drawing.Color.Black;
this.txt_LoginName.Location = new System.Drawing.Point(515, 207);
this.txt_LoginName.Name = "txt_LoginName";
this.txt_LoginName.Size = new System.Drawing.Size(276, 41);
this.txt_LoginName.TabIndex = 0;
this.txt_LoginName.Text = "Admin";
this.txt_LoginName.DoubleClick += new System.EventHandler(this.txt_LoginName_DoubleClick);
this.txt_LoginName.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txt_LoginName_KeyDown);
//
// pictureBox1
//
this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
this.pictureBox1.Image = global::LargeSquareOne.Properties.Resources.用户;
this.pictureBox1.Location = new System.Drawing.Point(441, 198);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(49, 50);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox1.TabIndex = 8;
this.pictureBox1.TabStop = false;
//
// pictureBox2
//
this.pictureBox2.BackColor = System.Drawing.Color.Transparent;
this.pictureBox2.Image = global::LargeSquareOne.Properties.Resources._25_密码;
this.pictureBox2.Location = new System.Drawing.Point(441, 277);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(49, 50);
this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox2.TabIndex = 9;
this.pictureBox2.TabStop = false;
//
// pictureBox3
//
this.pictureBox3.BackColor = System.Drawing.Color.Transparent;
this.pictureBox3.Dock = System.Windows.Forms.DockStyle.Left;
this.pictureBox3.Image = global::LargeSquareOne.Properties.Resources.yiweidongli;
this.pictureBox3.Location = new System.Drawing.Point(0, 0);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(153, 38);
this.pictureBox3.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox3.TabIndex = 10;
this.pictureBox3.TabStop = false;
//
// SwitchLanguage
//
this.SwitchLanguage.BackActive = System.Drawing.Color.FromArgb(((int)(((byte)(195)))), ((int)(((byte)(198)))), ((int)(((byte)(202)))));
this.SwitchLanguage.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(12)))), ((int)(((byte)(89)))), ((int)(((byte)(197)))));
this.SwitchLanguage.BackHover = System.Drawing.Color.FromArgb(((int)(((byte)(197)))), ((int)(((byte)(200)))), ((int)(((byte)(205)))));
this.SwitchLanguage.Dock = System.Windows.Forms.DockStyle.Right;
this.SwitchLanguage.Font = new System.Drawing.Font("Microsoft YaHei UI", 22F);
this.SwitchLanguage.Ghost = true;
this.SwitchLanguage.IconSvg = resources.GetString("SwitchLanguage.IconSvg");
this.SwitchLanguage.Items.AddRange(new object[] {
"中文",
"英文",
"匈牙利语"});
this.SwitchLanguage.Location = new System.Drawing.Point(855, 0);
this.SwitchLanguage.Name = "SwitchLanguage";
this.SwitchLanguage.Size = new System.Drawing.Size(41, 38);
this.SwitchLanguage.TabIndex = 11;
this.SwitchLanguage.Type = AntdUI.TTypeMini.Primary;
this.SwitchLanguage.SelectedValueChanged += new AntdUI.ObjectNEventHandler(this.SwitchLanguage_SelectedValueChanged);
//
// pageHeader1
//
this.pageHeader1.BackColor = System.Drawing.Color.Transparent;
this.pageHeader1.Controls.Add(this.SwitchLanguage);
this.pageHeader1.Controls.Add(this.pictureBox3);
this.pageHeader1.Dock = System.Windows.Forms.DockStyle.Top;
this.pageHeader1.Font = new System.Drawing.Font("Microsoft YaHei UI", 22F);
this.pageHeader1.Location = new System.Drawing.Point(0, 0);
this.pageHeader1.MaximizeBox = false;
this.pageHeader1.MinimizeBox = false;
this.pageHeader1.Name = "pageHeader1";
this.pageHeader1.ShowButton = true;
this.pageHeader1.Size = new System.Drawing.Size(936, 38);
this.pageHeader1.TabIndex = 14;
this.pageHeader1.Text = " ";
//
// btn_Login
//
this.btn_Login.DefaultBack = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(29)))), ((int)(((byte)(85)))));
this.btn_Login.DefaultBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(29)))), ((int)(((byte)(85)))));
this.btn_Login.Font = new System.Drawing.Font("Microsoft JhengHei UI", 24F);
this.btn_Login.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(251)))), ((int)(((byte)(251)))), ((int)(((byte)(251)))));
this.btn_Login.Location = new System.Drawing.Point(441, 392);
this.btn_Login.Name = "btn_Login";
this.btn_Login.Size = new System.Drawing.Size(380, 68);
this.btn_Login.TabIndex = 15;
this.btn_Login.Text = "登录";
this.btn_Login.Click += new System.EventHandler(this.btn_Login_Click);
//
// FrmLogin
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackgroundImage = global::LargeSquareOne.Properties.Resources.Login11;
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(936, 534);
this.Controls.Add(this.btn_Login);
this.Controls.Add(this.pageHeader1);
this.Controls.Add(this.pictureBox2);
this.Controls.Add(this.pictureBox1);
this.Controls.Add(this.txt_LoginPwd);
this.Controls.Add(this.txt_LoginName);
this.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.Name = "FrmLogin";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "登录系统";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmLogin_FormClosing);
this.Load += new System.EventHandler(this.FrmLogin_Load);
this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Form_MouseDown);
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form_MouseMove);
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
this.pageHeader1.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox txt_LoginPwd;
private System.Windows.Forms.TextBox txt_LoginName;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.PictureBox pictureBox2;
private System.Windows.Forms.PictureBox pictureBox3;
private AntdUI.Dropdown SwitchLanguage;
private AntdUI.PageHeader pageHeader1;
private AntdUI.Button btn_Login;
}
}
+291
View File
@@ -0,0 +1,291 @@
using AntdUI;
using JinYuan.Helper;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Runtime.InteropServices;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmLogin : MultiLanguageForm
{
public FrmLogin()
{
InitializeComponent();
InitializeLanguageSwitch();
InitializeFormSettings();
this.Load += FrmLogin_Load;
}
private void FrmLogin_Load(object sender, EventArgs e)
{
CommonMethods.GetSysConfig();
if (CommonMethods.sysConfig != null)
{
if (CommonMethods.sysConfig.AutoLogin)
{
btn_Login_Click(null, null);
}
}
}
/// <summary>
/// 登录
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Login_Click(object sender, EventArgs e)
{
//数据验证
if (this.txt_LoginName.Text.Trim().Length == 0)
{
new FrmMsgBoxOutWithAck(2,"请填写登录用户名", "登录提示").ShowDialog();
this.txt_LoginName.Focus();
return;
}
if (this.txt_LoginPwd.Text.Trim().Length == 0)
{
new FrmMsgBoxOutWithAck(2,"请填写登录用密码", "登录提示").ShowDialog();
this.txt_LoginPwd.Focus();
return;
}
//封装对象
SysAdmin sysAdmin = new SysAdmin()
{
LoginName = this.txt_LoginName.Text.Trim(),
LoginPwd = StringSecurityHelper.DESEncrypt(this.txt_LoginPwd.Text.Trim())
};
//调用查询方法
sysAdmin = CommonMethods.db.Query<SysAdmin>(it => it.LoginName == sysAdmin.LoginName && it.LoginPwd == sysAdmin.LoginPwd);
if (sysAdmin == null)
{
new FrmMsgBoxOutWithAck(3,"登录用户或密码错误!!!", "登录提示").ShowDialog();
return;
}
else
{
this.DialogResult = DialogResult.OK;
CommonMethods.LoginOut = false;
//存储用户对象
CommonMethods.currentAdmin = sysAdmin;
CommonMethods.IsLoginOk = true;
}
//登陆后获取数据库表头
List<string[]> SqlFieldsOut = CommonMethods.m_DBCtrl.SQLAllDataSearchToStrArrList(CommonMethods.dBSQL.GetSqlFields(CommonMethods.m_DBCtrl.machineOutSQLTable));
CommonMethods.m_DBCtrl.HeaderTextOut = CommonMethods.m_DBCtrl.HeaderTextAssignment(SqlFieldsOut, 2);//本地数据文件表头
}
/// <summary>
/// 回车按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Login_KeyDown(object sender, KeyEventArgs e)
{
//数据验证
if (this.txt_LoginName.Text.Trim().Length == 0)
{
new FrmMsgBoxOutWithAck(2, "请填写登录用户名", "登录提示").ShowDialog();
this.txt_LoginName.Focus();
return;
}
if (this.txt_LoginPwd.Text.Trim().Length == 0)
{
new FrmMsgBoxOutWithAck(2, "请填写登录用密码", "登录提示").ShowDialog();
this.txt_LoginPwd.Focus();
return;
}
//封装对象
SysAdmin sysAdmin = new SysAdmin()
{
LoginName = this.txt_LoginName.Text.Trim(),
LoginPwd = StringSecurityHelper.DESEncrypt(this.txt_LoginPwd.Text.Trim())
};
//调用查询方法
sysAdmin = CommonMethods.db.Query<SysAdmin>(it => it.LoginName == sysAdmin.LoginName && it.LoginPwd == sysAdmin.LoginPwd);
if (sysAdmin == null)
{
new FrmMsgBoxOutWithAck(3, "登录用户或密码错误!!!", "登录提示").ShowDialog();
return;
}
else
{
this.DialogResult = DialogResult.OK;
CommonMethods.LoginOut = false;
//存储用户对象
CommonMethods.currentAdmin = sysAdmin;
CommonMethods.IsLoginOk = true;
}
}
private void txt_LoginName_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
this.btn_Login_Click(null, null);
}
}
private void txt_LoginName_DoubleClick(object sender, EventArgs e)
{
StartKeyBoard();
}
#region 启动软键盘
private void StartKeyBoard()
{
//打开软键盘
try
{
if (!System.IO.File.Exists(Environment.SystemDirectory + "\\osk.exe"))
{
MessageBox.Show("软件盘可执行文件不存在!");
return;
}
softKey = System.Diagnostics.Process.Start(Environment.SystemDirectory + "\\osk.exe");
// 上面的语句在打开软键盘后,系统还没用立刻把软键盘的窗口创建出来了。所以下面的代码用循环来查询窗口是否创建,只有创建了窗口
// FindWindow才能找到窗口句柄,才可以移动窗口的位置和设置窗口的大小。这里是关键。
IntPtr intptr = IntPtr.Zero;
while (IntPtr.Zero == intptr)
{
System.Threading.Thread.Sleep(100);
intptr = FindWindow(null, "屏幕键盘");
}
// 获取屏幕尺寸
int iActulaWidth = Screen.PrimaryScreen.Bounds.Width;
int iActulaHeight = Screen.PrimaryScreen.Bounds.Height;
// 设置软键盘的显示位置,底部居中
int posX = (iActulaWidth - 1000) / 2;
int posY = (iActulaHeight - 300);
//设定键盘显示位置
MoveWindow(intptr, posX, posY, 1000, 300, true);
//设置软键盘到前端显示
SetForegroundWindow(intptr);
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
}
// 申明要使用的dll和api
[DllImport("User32.dll", EntryPoint = "FindWindow")]
public extern static IntPtr FindWindow(string lpClassName, string lpWindowName);
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint = "MoveWindow")]
public static extern bool MoveWindow(System.IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
[DllImport("user32.dll")]
static extern bool SetForegroundWindow(IntPtr hWnd);
private System.Diagnostics.Process softKey;
#endregion
/// <summary>
/// 退出
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void FrmLogin_FormClosing(object sender, FormClosingEventArgs e)
{
//this.Close();
}
#region 窗体拖动
public static Point CPoint;
private void Form_MouseDown(object sender, MouseEventArgs e)
{
CPoint = new Point(-e.X, -e.Y);
}
private void Form_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point myPosittion = Control.MousePosition;//获取当前鼠标的屏幕坐标
myPosittion.Offset(CPoint.X, CPoint.Y);//重载当前鼠标的位置
this.DesktopLocation = myPosittion;//设置当前窗体在屏幕上的位置
}
}
#endregion
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams parss = base.CreateParams;
parss.ExStyle |= 0x02000000;
return parss;
}
}
private void InitializeFormSettings()
{
this.SetStyle(ControlStyles.AllPaintingInWmPaint |
ControlStyles.DoubleBuffer |
ControlStyles.ResizeRedraw |
ControlStyles.Selectable |
ControlStyles.SupportsTransparentBackColor, true);
}
#endregion
private void InitializeLanguageSwitch()
{
SwitchLanguage.Items.Clear();
SwitchLanguage.Items.Add(new SelectItem(Properties.Resources.中国国旗, "中文"));
SwitchLanguage.Items.Add(new SelectItem(Properties.Resources.美国国旗, "English"));
SwitchLanguage.Items.Add(new SelectItem(Properties.Resources.匈牙利国旗, "Hungary"));
SwitchLanguage.Items.Add(new SelectItem(Properties.Resources.马来西亚国旗, "Malaysia"));
}
/// <summary>
/// 切换语言
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void SwitchLanguage_SelectedValueChanged(object sender, ObjectNEventArgs e)
{
if (e.Value is SelectItem selectedItem)
{
string selectedLanguage = selectedItem.Text;
string languageCode = selectedLanguage switch
{
"中文" => "zh",
"English" => "en",
"Hungary" => "hu",
"Malaysia" => "ms",
_ => "zh"
};
LanguageManager.ChangeLanguage(languageCode);
}
}
}
}
File diff suppressed because it is too large Load Diff
+193
View File
@@ -0,0 +1,193 @@
namespace LargeSquareOne
{
partial class FrmLoginMes
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmLoginMes));
this.txt_LoginMesPwd = new System.Windows.Forms.TextBox();
this.txt_LoginMesName = new System.Windows.Forms.TextBox();
this.btn_LoginMes = new System.Windows.Forms.Button();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.btn_Close = new System.Windows.Forms.Button();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.label1 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
this.SuspendLayout();
//
// txt_LoginMesPwd
//
this.txt_LoginMesPwd.BackColor = System.Drawing.Color.White;
this.txt_LoginMesPwd.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txt_LoginMesPwd.Font = new System.Drawing.Font("微软雅黑", 15F);
this.txt_LoginMesPwd.ForeColor = System.Drawing.Color.Black;
this.txt_LoginMesPwd.Location = new System.Drawing.Point(334, 201);
this.txt_LoginMesPwd.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.txt_LoginMesPwd.Name = "txt_LoginMesPwd";
this.txt_LoginMesPwd.PasswordChar = '*';
this.txt_LoginMesPwd.Size = new System.Drawing.Size(164, 27);
this.txt_LoginMesPwd.TabIndex = 17;
//
// txt_LoginMesName
//
this.txt_LoginMesName.BackColor = System.Drawing.Color.White;
this.txt_LoginMesName.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txt_LoginMesName.Font = new System.Drawing.Font("微软雅黑", 15F);
this.txt_LoginMesName.ForeColor = System.Drawing.Color.Black;
this.txt_LoginMesName.Location = new System.Drawing.Point(334, 141);
this.txt_LoginMesName.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.txt_LoginMesName.Name = "txt_LoginMesName";
this.txt_LoginMesName.Size = new System.Drawing.Size(164, 27);
this.txt_LoginMesName.TabIndex = 16;
this.txt_LoginMesName.DoubleClick += new System.EventHandler(this.txt_LoginMesName_DoubleClick);
this.txt_LoginMesName.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txt_LoginMesName_KeyDown);
//
// btn_LoginMes
//
this.btn_LoginMes.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(29)))), ((int)(((byte)(85)))));
this.btn_LoginMes.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
this.btn_LoginMes.FlatAppearance.MouseOverBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
this.btn_LoginMes.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_LoginMes.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btn_LoginMes.ForeColor = System.Drawing.Color.White;
this.btn_LoginMes.Location = new System.Drawing.Point(323, 255);
this.btn_LoginMes.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.btn_LoginMes.Name = "btn_LoginMes";
this.btn_LoginMes.Size = new System.Drawing.Size(144, 43);
this.btn_LoginMes.TabIndex = 15;
this.btn_LoginMes.Text = "登 录";
this.btn_LoginMes.UseVisualStyleBackColor = false;
this.btn_LoginMes.Click += new System.EventHandler(this.btn_LoginMes_Click);
//
// pictureBox2
//
this.pictureBox2.BackColor = System.Drawing.Color.Transparent;
this.pictureBox2.Image = global::LargeSquareOne.Properties.Resources._25_密码;
this.pictureBox2.Location = new System.Drawing.Point(290, 192);
this.pictureBox2.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(34, 37);
this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox2.TabIndex = 19;
this.pictureBox2.TabStop = false;
//
// pictureBox1
//
this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
this.pictureBox1.Image = global::LargeSquareOne.Properties.Resources.用户;
this.pictureBox1.Location = new System.Drawing.Point(290, 132);
this.pictureBox1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(34, 36);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox1.TabIndex = 18;
this.pictureBox1.TabStop = false;
//
// btn_Close
//
this.btn_Close.BackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatAppearance.MouseDownBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 14F);
this.btn_Close.ForeColor = System.Drawing.Color.Black;
this.btn_Close.Location = new System.Drawing.Point(566, 3);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 34);
this.btn_Close.TabIndex = 21;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = false;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// pictureBox3
//
this.pictureBox3.BackColor = System.Drawing.Color.Transparent;
this.pictureBox3.Image = global::LargeSquareOne.Properties.Resources.yiweidongli;
this.pictureBox3.Location = new System.Drawing.Point(0, 3);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(153, 34);
this.pictureBox3.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox3.TabIndex = 22;
this.pictureBox3.TabStop = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.BackColor = System.Drawing.Color.Transparent;
this.label1.Font = new System.Drawing.Font("微软雅黑", 26.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(192)))));
this.label1.Location = new System.Drawing.Point(236, 61);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(97, 46);
this.label1.TabIndex = 23;
this.label1.Text = "MES";
//
// FrmLoginMes
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackgroundImage = global::LargeSquareOne.Properties.Resources.Login11;
this.ClientSize = new System.Drawing.Size(599, 357);
this.Controls.Add(this.label1);
this.Controls.Add(this.pictureBox3);
this.Controls.Add(this.btn_Close);
this.Controls.Add(this.pictureBox2);
this.Controls.Add(this.pictureBox1);
this.Controls.Add(this.txt_LoginMesPwd);
this.Controls.Add(this.txt_LoginMesName);
this.Controls.Add(this.btn_LoginMes);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmLoginMes";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmLoginMes";
this.Load += new System.EventHandler(this.FrmLoginMes_Load);
this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Form_MouseDown);
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form_MouseMove);
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.PictureBox pictureBox2;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.TextBox txt_LoginMesPwd;
private System.Windows.Forms.TextBox txt_LoginMesName;
private System.Windows.Forms.Button btn_LoginMes;
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.PictureBox pictureBox3;
private System.Windows.Forms.Label label1;
}
}
+198
View File
@@ -0,0 +1,198 @@
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmLoginMes : MultiLanguageForm
{
public FrmLoginMes()
{
InitializeComponent();
this.Load += FrmLoginMes_Load;
}
private void FrmLoginMes_Load(object sender, EventArgs e)
{
CommonMethods.GetSysConfig();
if (CommonMethods.sysConfig != null)
{
if (CommonMethods.sysConfig.AutoLogin)
{
btn_LoginMes_Click(null, null);
}
}
}
/// <summary>
/// Mes登录
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private async void btn_LoginMes_Click(object sender, EventArgs e)
{
if (this.txt_LoginMesName.Text.Trim().Length == 0)
{
new FrmMsgBoxOutWithAck(2, "请填写登录用户名".Translated(), "登录提示".Translated()).ShowDialog();
this.txt_LoginMesName.Focus();
return;
}
if (this.txt_LoginMesPwd.Text.Trim().Length == 0)
{
new FrmMsgBoxOutWithAck(2, "请填写登录密码".Translated(), "登录提示".Translated()).ShowDialog();
this.txt_LoginMesPwd.Focus();
return;
}
CommonMethods.mesConfig.mesUserName = this.txt_LoginMesName.Text.Trim();
CommonMethods.mesConfig.mesPwd = this.txt_LoginMesPwd.Text.Trim();
string UserCardID = CommonMethods.currentAdmin.LoginUid;
var (success, Message, mesUserLevel) = await CommonMethods.hbgMes.LoginEnyityAsync(CommonMethods.mesConfig.EmployeeAuthCheck, CommonMethods.mesConfig.siteCode, CommonMethods.mesConfig.lineCode,
CommonMethods.mesConfig.equipNum, CommonMethods.mesConfig.mesUserName, CommonMethods.mesConfig.mesPwd);
if (!success)
{
new FrmMsgBoxOutWithAck(3, Message, "登录提示".Translated()).ShowDialog();
return;
}
else
{
this.DialogResult = DialogResult.OK;
CommonMethods.mesConfig.IsLoginMesOK = true;
CommonMethods.mesConfig.mesUserLevel = mesUserLevel;
new FrmMsgBoxOutWithAck(1, "MES登录成功".Translated() + "," + "登录用户".Translated() + $":{CommonMethods.mesConfig.mesUserName}", "登录提示".Translated()).ShowDialog();
//登录日志
CommonMethods.AddOPLog(false, "MES登录成功".Translated() + "," + "登录用户".Translated() + $":{CommonMethods.mesConfig.mesUserName}");
}
}
private void txt_LoginMesName_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
this.btn_LoginMes_Click(null, null);
}
}
private void txt_LoginMesName_DoubleClick(object sender, EventArgs e)
{
StartKeyBoard();
}
#region 启动软键盘
private void StartKeyBoard()
{
//打开软键盘
try
{
if (!System.IO.File.Exists(Environment.SystemDirectory + "\\osk.exe"))
{
MessageBox.Show("软件盘可执行文件不存在!");
return;
}
softKey = System.Diagnostics.Process.Start(Environment.SystemDirectory + "\\osk.exe");
// 上面的语句在打开软键盘后,系统还没用立刻把软键盘的窗口创建出来了。所以下面的代码用循环来查询窗口是否创建,只有创建了窗口
// FindWindow才能找到窗口句柄,才可以移动窗口的位置和设置窗口的大小。这里是关键。
IntPtr intptr = IntPtr.Zero;
while (IntPtr.Zero == intptr)
{
System.Threading.Thread.Sleep(100);
intptr = FindWindow(null, "屏幕键盘");
}
// 获取屏幕尺寸
int iActulaWidth = Screen.PrimaryScreen.Bounds.Width;
int iActulaHeight = Screen.PrimaryScreen.Bounds.Height;
// 设置软键盘的显示位置,底部居中
int posX = (iActulaWidth - 1000) / 2;
int posY = (iActulaHeight - 300);
//设定键盘显示位置
MoveWindow(intptr, posX, posY, 1000, 300, true);
//设置软键盘到前端显示
SetForegroundWindow(intptr);
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
}
// 申明要使用的dll和api
[DllImport("User32.dll", EntryPoint = "FindWindow")]
public extern static IntPtr FindWindow(string lpClassName, string lpWindowName);
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint = "MoveWindow")]
public static extern bool MoveWindow(System.IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
[DllImport("user32.dll")]
static extern bool SetForegroundWindow(IntPtr hWnd);
private System.Diagnostics.Process softKey;
#endregion
/// <summary>
/// 退出
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Close_Click(object sender, EventArgs e)
{
this.Close();
}
#region 窗体拖动
public static Point CPoint;
private void Form_MouseDown(object sender, MouseEventArgs e)
{
CPoint = new Point(-e.X, -e.Y);
}
private void Form_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point myPosittion = Control.MousePosition;//获取当前鼠标的屏幕坐标
myPosittion.Offset(CPoint.X, CPoint.Y);//重载当前鼠标的位置
this.DesktopLocation = myPosittion;//设置当前窗体在屏幕上的位置
}
}
#endregion
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams parss = base.CreateParams;
parss.ExStyle |= 0x02000000;
return parss;
}
}
#endregion
}
}
File diff suppressed because it is too large Load Diff
+859
View File
@@ -0,0 +1,859 @@
namespace LargeSquareOne
{
partial class FrmMain
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain));
this.pageHeader1 = new AntdUI.PageHeader();
this.TopPanel = new System.Windows.Forms.Panel();
this.lblSubtitle = new System.Windows.Forms.Label();
this.nav_AlarmLog = new JinYuan.ControlLib.NaviButton2();
this.nav_UserInfo = new JinYuan.ControlLib.NaviButton2();
this.nav_SetSystem = new JinYuan.ControlLib.NaviButton2();
this.nav_DataMonitor = new JinYuan.ControlLib.NaviButton2();
this.nav_HistotryData = new JinYuan.ControlLib.NaviButton2();
this.nav_CPK = new JinYuan.ControlLib.NaviButton2();
this.nav_System = new JinYuan.ControlLib.NaviButton2();
this.nav_Monitor = new JinYuan.ControlLib.NaviButton2();
this.panel1 = new AntdUI.Panel();
this.SwitchLanguage = new AntdUI.Dropdown();
this.avatar2 = new AntdUI.Avatar();
this.avMesicon = new AntdUI.Avatar();
this.btnScale = new AntdUI.Button();
this.lblMES = new System.Windows.Forms.Label();
this.lblHeading = new System.Windows.Forms.Label();
this.btExit = new AntdUI.Button();
this.lblLogTitle = new System.Windows.Forms.Label();
this.lbl_LoginName = new System.Windows.Forms.Label();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.lbl_LoginLevel = new System.Windows.Forms.Label();
this.led_State = new SeeSharpTools.JY.GUI.LED();
this.label1 = new System.Windows.Forms.Label();
this.label6 = new System.Windows.Forms.Label();
this.led_RunState = new SeeSharpTools.JY.GUI.LED();
this.label21 = new System.Windows.Forms.Label();
this.led_MESState = new SeeSharpTools.JY.GUI.LED();
this.label18 = new System.Windows.Forms.Label();
this.led_PLCState = new SeeSharpTools.JY.GUI.LED();
this.panel3 = new System.Windows.Forms.Panel();
this.lbl_DateTime = new System.Windows.Forms.Label();
this.panel9 = new System.Windows.Forms.Panel();
this.ucRollText1 = new JinYuan.ControlLib.UCRollText();
this.panel5 = new AntdUI.Panel();
this.panel8 = new System.Windows.Forms.Panel();
this.panel7 = new System.Windows.Forms.Panel();
this.btToggleMonitor = new AntdUI.Button();
this.cmbModelType = new HML.DropDownListPlus();
this.txtMaterialCode = new AntdUI.Input();
this.CorePanel = new JinYuan.ControlLib.PanelExt();
this.MainPanel = new System.Windows.Forms.Panel();
this.pageHeader1.SuspendLayout();
this.TopPanel.SuspendLayout();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.panel3.SuspendLayout();
this.panel9.SuspendLayout();
this.panel5.SuspendLayout();
this.panel8.SuspendLayout();
this.panel7.SuspendLayout();
this.CorePanel.SuspendLayout();
this.SuspendLayout();
//
// pageHeader1
//
this.pageHeader1.BackColor = System.Drawing.Color.Transparent;
this.pageHeader1.BackgroundImage = global::LargeSquareOne.Properties.Resources.导航栏;
this.pageHeader1.Controls.Add(this.TopPanel);
this.pageHeader1.Controls.Add(this.panel1);
this.pageHeader1.Dock = System.Windows.Forms.DockStyle.Top;
this.pageHeader1.Font = new System.Drawing.Font("Cambria", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.pageHeader1.ForeColor = System.Drawing.Color.White;
this.pageHeader1.Location = new System.Drawing.Point(0, 0);
this.pageHeader1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
this.pageHeader1.Name = "pageHeader1";
this.pageHeader1.Size = new System.Drawing.Size(1921, 116);
this.pageHeader1.SubText = "";
this.pageHeader1.TabIndex = 0;
this.pageHeader1.Text = "";
//
// TopPanel
//
this.TopPanel.Controls.Add(this.lblSubtitle);
this.TopPanel.Controls.Add(this.nav_AlarmLog);
this.TopPanel.Controls.Add(this.nav_UserInfo);
this.TopPanel.Controls.Add(this.nav_SetSystem);
this.TopPanel.Controls.Add(this.nav_DataMonitor);
this.TopPanel.Controls.Add(this.nav_HistotryData);
this.TopPanel.Controls.Add(this.nav_CPK);
this.TopPanel.Controls.Add(this.nav_System);
this.TopPanel.Controls.Add(this.nav_Monitor);
this.TopPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.TopPanel.Location = new System.Drawing.Point(0, 35);
this.TopPanel.Name = "TopPanel";
this.TopPanel.Size = new System.Drawing.Size(1921, 81);
this.TopPanel.TabIndex = 16;
//
// lblSubtitle
//
this.lblSubtitle.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblSubtitle.Font = new System.Drawing.Font("Cambria", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblSubtitle.ForeColor = System.Drawing.Color.White;
this.lblSubtitle.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lblSubtitle.Location = new System.Drawing.Point(601, 3);
this.lblSubtitle.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.lblSubtitle.Name = "lblSubtitle";
this.lblSubtitle.Size = new System.Drawing.Size(712, 38);
this.lblSubtitle.TabIndex = 2;
this.lblSubtitle.Text = "Shell C Data Acquisition System";
this.lblSubtitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblSubtitle.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.lblSubtitle.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// nav_AlarmLog
//
this.nav_AlarmLog.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.nav_AlarmLog.BackColor = System.Drawing.Color.Transparent;
this.nav_AlarmLog.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_AlarmLog.BackgroundImage")));
this.nav_AlarmLog.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_AlarmLog.IsLeft = true;
this.nav_AlarmLog.IsSelected = false;
this.nav_AlarmLog.Location = new System.Drawing.Point(449, 15);
this.nav_AlarmLog.Margin = new System.Windows.Forms.Padding(4, 6, 4, 6);
this.nav_AlarmLog.Name = "nav_AlarmLog";
this.nav_AlarmLog.Size = new System.Drawing.Size(130, 52);
this.nav_AlarmLog.TabIndex = 8;
this.nav_AlarmLog.Tag = "日志报警";
this.nav_AlarmLog.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_AlarmLog.TitleForeColor = System.Drawing.Color.White;
this.nav_AlarmLog.TitleName = "日志报警";
this.nav_AlarmLog.TitleTextMultiLine = true;
this.nav_AlarmLog.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_UserInfo
//
this.nav_UserInfo.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.nav_UserInfo.BackColor = System.Drawing.Color.Transparent;
this.nav_UserInfo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_UserInfo.BackgroundImage")));
this.nav_UserInfo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_UserInfo.IsLeft = false;
this.nav_UserInfo.IsSelected = false;
this.nav_UserInfo.Location = new System.Drawing.Point(1754, 15);
this.nav_UserInfo.Margin = new System.Windows.Forms.Padding(2);
this.nav_UserInfo.Name = "nav_UserInfo";
this.nav_UserInfo.Size = new System.Drawing.Size(130, 52);
this.nav_UserInfo.TabIndex = 9;
this.nav_UserInfo.Tag = "用户管理";
this.nav_UserInfo.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_UserInfo.TitleForeColor = System.Drawing.Color.White;
this.nav_UserInfo.TitleName = "用户管理";
this.nav_UserInfo.TitleTextMultiLine = true;
this.nav_UserInfo.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_SetSystem
//
this.nav_SetSystem.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.nav_SetSystem.BackColor = System.Drawing.Color.Transparent;
this.nav_SetSystem.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_SetSystem.BackgroundImage")));
this.nav_SetSystem.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_SetSystem.IsLeft = false;
this.nav_SetSystem.IsSelected = false;
this.nav_SetSystem.Location = new System.Drawing.Point(1464, 15);
this.nav_SetSystem.Margin = new System.Windows.Forms.Padding(2, 4, 2, 4);
this.nav_SetSystem.Name = "nav_SetSystem";
this.nav_SetSystem.Size = new System.Drawing.Size(130, 52);
this.nav_SetSystem.TabIndex = 10;
this.nav_SetSystem.Tag = "参数设置";
this.nav_SetSystem.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_SetSystem.TitleForeColor = System.Drawing.Color.White;
this.nav_SetSystem.TitleName = "参数设置";
this.nav_SetSystem.TitleTextMultiLine = true;
this.nav_SetSystem.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_DataMonitor
//
this.nav_DataMonitor.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.nav_DataMonitor.BackColor = System.Drawing.Color.Transparent;
this.nav_DataMonitor.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_DataMonitor.BackgroundImage")));
this.nav_DataMonitor.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_DataMonitor.ForeColor = System.Drawing.Color.White;
this.nav_DataMonitor.IsLeft = true;
this.nav_DataMonitor.IsSelected = false;
this.nav_DataMonitor.Location = new System.Drawing.Point(161, 15);
this.nav_DataMonitor.Margin = new System.Windows.Forms.Padding(10, 37, 10, 37);
this.nav_DataMonitor.Name = "nav_DataMonitor";
this.nav_DataMonitor.Size = new System.Drawing.Size(130, 52);
this.nav_DataMonitor.TabIndex = 13;
this.nav_DataMonitor.Tag = "数据监控";
this.nav_DataMonitor.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_DataMonitor.TitleForeColor = System.Drawing.Color.White;
this.nav_DataMonitor.TitleName = "数据监控";
this.nav_DataMonitor.TitleTextMultiLine = true;
this.nav_DataMonitor.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_HistotryData
//
this.nav_HistotryData.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.nav_HistotryData.BackColor = System.Drawing.Color.Transparent;
this.nav_HistotryData.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_HistotryData.BackgroundImage")));
this.nav_HistotryData.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_HistotryData.IsLeft = false;
this.nav_HistotryData.IsSelected = false;
this.nav_HistotryData.Location = new System.Drawing.Point(1319, 15);
this.nav_HistotryData.Margin = new System.Windows.Forms.Padding(2);
this.nav_HistotryData.Name = "nav_HistotryData";
this.nav_HistotryData.Size = new System.Drawing.Size(130, 52);
this.nav_HistotryData.TabIndex = 3;
this.nav_HistotryData.Tag = "数据追溯";
this.nav_HistotryData.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_HistotryData.TitleForeColor = System.Drawing.Color.White;
this.nav_HistotryData.TitleName = "数据追溯";
this.nav_HistotryData.TitleTextMultiLine = true;
this.nav_HistotryData.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_CPK
//
this.nav_CPK.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.nav_CPK.BackColor = System.Drawing.Color.Transparent;
this.nav_CPK.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_CPK.BackgroundImage")));
this.nav_CPK.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_CPK.IsLeft = true;
this.nav_CPK.IsSelected = false;
this.nav_CPK.Location = new System.Drawing.Point(305, 15);
this.nav_CPK.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.nav_CPK.Name = "nav_CPK";
this.nav_CPK.Size = new System.Drawing.Size(130, 52);
this.nav_CPK.TabIndex = 14;
this.nav_CPK.Tag = "数据分析";
this.nav_CPK.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_CPK.TitleForeColor = System.Drawing.Color.White;
this.nav_CPK.TitleName = "数据分析";
this.nav_CPK.TitleTextMultiLine = true;
this.nav_CPK.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_System
//
this.nav_System.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.nav_System.BackColor = System.Drawing.Color.Transparent;
this.nav_System.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_System.BackgroundImage")));
this.nav_System.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_System.IsLeft = false;
this.nav_System.IsSelected = false;
this.nav_System.Location = new System.Drawing.Point(1609, 15);
this.nav_System.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.nav_System.Name = "nav_System";
this.nav_System.Size = new System.Drawing.Size(130, 52);
this.nav_System.TabIndex = 11;
this.nav_System.Tag = "系统设置";
this.nav_System.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_System.TitleForeColor = System.Drawing.Color.White;
this.nav_System.TitleName = "系统设置";
this.nav_System.TitleTextMultiLine = true;
this.nav_System.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// nav_Monitor
//
this.nav_Monitor.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.nav_Monitor.BackColor = System.Drawing.Color.Transparent;
this.nav_Monitor.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("nav_Monitor.BackgroundImage")));
this.nav_Monitor.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.nav_Monitor.Font = new System.Drawing.Font("Cambria", 10.5F);
this.nav_Monitor.IsLeft = true;
this.nav_Monitor.IsSelected = false;
this.nav_Monitor.Location = new System.Drawing.Point(17, 15);
this.nav_Monitor.Margin = new System.Windows.Forms.Padding(12, 39, 12, 39);
this.nav_Monitor.Name = "nav_Monitor";
this.nav_Monitor.Size = new System.Drawing.Size(129, 53);
this.nav_Monitor.TabIndex = 1;
this.nav_Monitor.Tag = "集中监控";
this.nav_Monitor.TitleFont = new System.Drawing.Font("Cambria", 10.5F);
this.nav_Monitor.TitleForeColor = System.Drawing.Color.White;
this.nav_Monitor.TitleName = "集中监控";
this.nav_Monitor.TitleTextMultiLine = true;
this.nav_Monitor.Click += new System.EventHandler(this.CommonNaviButton_Click);
//
// panel1
//
this.panel1.Back = System.Drawing.Color.Transparent;
this.panel1.Controls.Add(this.SwitchLanguage);
this.panel1.Controls.Add(this.avatar2);
this.panel1.Controls.Add(this.avMesicon);
this.panel1.Controls.Add(this.btnScale);
this.panel1.Controls.Add(this.lblMES);
this.panel1.Controls.Add(this.lblHeading);
this.panel1.Controls.Add(this.btExit);
this.panel1.Controls.Add(this.lblLogTitle);
this.panel1.Controls.Add(this.lbl_LoginName);
this.panel1.Controls.Add(this.pictureBox1);
this.panel1.Controls.Add(this.lbl_LoginLevel);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(1921, 35);
this.panel1.TabIndex = 15;
this.panel1.Text = "panel1";
this.panel1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.panel1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// SwitchLanguage
//
this.SwitchLanguage.BackActive = System.Drawing.Color.FromArgb(((int)(((byte)(195)))), ((int)(((byte)(198)))), ((int)(((byte)(202)))));
this.SwitchLanguage.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(12)))), ((int)(((byte)(89)))), ((int)(((byte)(197)))));
this.SwitchLanguage.BackHover = System.Drawing.Color.FromArgb(((int)(((byte)(197)))), ((int)(((byte)(200)))), ((int)(((byte)(205)))));
this.SwitchLanguage.Dock = System.Windows.Forms.DockStyle.Right;
this.SwitchLanguage.Font = new System.Drawing.Font("Microsoft YaHei UI", 22F);
this.SwitchLanguage.Ghost = true;
this.SwitchLanguage.IconSvg = resources.GetString("SwitchLanguage.IconSvg");
this.SwitchLanguage.Items.AddRange(new object[] {
"中文",
"英文",
"匈牙利语"});
this.SwitchLanguage.Location = new System.Drawing.Point(1806, 0);
this.SwitchLanguage.Name = "SwitchLanguage";
this.SwitchLanguage.Size = new System.Drawing.Size(41, 35);
this.SwitchLanguage.TabIndex = 13;
this.SwitchLanguage.Type = AntdUI.TTypeMini.Primary;
this.SwitchLanguage.SelectedValueChanged += new AntdUI.ObjectNEventHandler(this.SwitchLanguage_SelectedValueChanged);
//
// avatar2
//
this.avatar2.ImageSvg = resources.GetString("avatar2.ImageSvg");
this.avatar2.Location = new System.Drawing.Point(1630, 8);
this.avatar2.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.avatar2.Name = "avatar2";
this.avatar2.Size = new System.Drawing.Size(26, 21);
this.avatar2.TabIndex = 5;
this.avatar2.Text = "";
//
// avMesicon
//
this.avMesicon.ImageSvg = resources.GetString("avMesicon.ImageSvg");
this.avMesicon.Location = new System.Drawing.Point(1523, 7);
this.avMesicon.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.avMesicon.Name = "avMesicon";
this.avMesicon.Size = new System.Drawing.Size(26, 21);
this.avMesicon.TabIndex = 4;
this.avMesicon.Text = "a";
//
// btnScale
//
this.btnScale.BackHover = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(130)))), ((int)(((byte)(133)))));
this.btnScale.DefaultBack = System.Drawing.Color.Transparent;
this.btnScale.DefaultBorderColor = System.Drawing.Color.Transparent;
this.btnScale.Dock = System.Windows.Forms.DockStyle.Right;
this.btnScale.Font = new System.Drawing.Font("Microsoft YaHei UI", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnScale.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(8)))), ((int)(((byte)(8)))), ((int)(((byte)(8)))));
this.btnScale.IconSvg = resources.GetString("btnScale.IconSvg");
this.btnScale.Location = new System.Drawing.Point(1847, 0);
this.btnScale.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.btnScale.Name = "btnScale";
this.btnScale.Size = new System.Drawing.Size(37, 35);
this.btnScale.TabIndex = 8;
this.btnScale.Click += new System.EventHandler(this.btnScale_Click);
//
// lblMES
//
this.lblMES.Font = new System.Drawing.Font("微软雅黑", 11.5F, System.Drawing.FontStyle.Bold);
this.lblMES.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.lblMES.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lblMES.Location = new System.Drawing.Point(1548, 5);
this.lblMES.Name = "lblMES";
this.lblMES.Size = new System.Drawing.Size(74, 26);
this.lblMES.TabIndex = 7;
this.lblMES.Text = "075295";
this.lblMES.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// lblHeading
//
this.lblHeading.Font = new System.Drawing.Font("Cambria", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblHeading.ForeColor = System.Drawing.Color.White;
this.lblHeading.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lblHeading.Location = new System.Drawing.Point(847, -2);
this.lblHeading.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.lblHeading.Name = "lblHeading";
this.lblHeading.Size = new System.Drawing.Size(231, 35);
this.lblHeading.TabIndex = 3;
this.lblHeading.Text = "Factory 49";
this.lblHeading.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lblHeading.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.lblHeading.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// btExit
//
this.btExit.BackHover = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(130)))), ((int)(((byte)(133)))));
this.btExit.DefaultBack = System.Drawing.Color.Transparent;
this.btExit.Dock = System.Windows.Forms.DockStyle.Right;
this.btExit.Font = new System.Drawing.Font("Microsoft YaHei UI", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btExit.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
this.btExit.IconSvg = resources.GetString("btExit.IconSvg");
this.btExit.Location = new System.Drawing.Point(1884, 0);
this.btExit.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.btExit.Name = "btExit";
this.btExit.Size = new System.Drawing.Size(37, 35);
this.btExit.TabIndex = 2;
this.btExit.ToggleBackHover = System.Drawing.Color.FromArgb(((int)(((byte)(213)))), ((int)(((byte)(217)))), ((int)(((byte)(222)))));
this.btExit.Click += new System.EventHandler(this.btExit_Click);
//
// lblLogTitle
//
this.lblLogTitle.Dock = System.Windows.Forms.DockStyle.Left;
this.lblLogTitle.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.lblLogTitle.Font = new System.Drawing.Font("微软雅黑", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblLogTitle.ForeColor = System.Drawing.Color.White;
this.lblLogTitle.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lblLogTitle.Location = new System.Drawing.Point(74, 0);
this.lblLogTitle.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.lblLogTitle.Name = "lblLogTitle";
this.lblLogTitle.Size = new System.Drawing.Size(233, 35);
this.lblLogTitle.TabIndex = 7;
this.lblLogTitle.Text = "亿纬动力";
this.lblLogTitle.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lblLogTitle.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.lblLogTitle.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// lbl_LoginName
//
this.lbl_LoginName.Font = new System.Drawing.Font("微软雅黑", 11.5F, System.Drawing.FontStyle.Bold);
this.lbl_LoginName.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.lbl_LoginName.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lbl_LoginName.Location = new System.Drawing.Point(1730, 6);
this.lbl_LoginName.Name = "lbl_LoginName";
this.lbl_LoginName.Size = new System.Drawing.Size(74, 26);
this.lbl_LoginName.TabIndex = 6;
this.lbl_LoginName.Text = "075295";
this.lbl_LoginName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// pictureBox1
//
this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Left;
this.pictureBox1.Image = global::LargeSquareOne.Properties.Resources.eve;
this.pictureBox1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.pictureBox1.Location = new System.Drawing.Point(0, 0);
this.pictureBox1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(74, 35);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox1.TabIndex = 0;
this.pictureBox1.TabStop = false;
this.pictureBox1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.pictureBox1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// lbl_LoginLevel
//
this.lbl_LoginLevel.Font = new System.Drawing.Font("微软雅黑", 11.5F, System.Drawing.FontStyle.Bold);
this.lbl_LoginLevel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.lbl_LoginLevel.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lbl_LoginLevel.Location = new System.Drawing.Point(1662, 6);
this.lbl_LoginLevel.Name = "lbl_LoginLevel";
this.lbl_LoginLevel.Size = new System.Drawing.Size(74, 26);
this.lbl_LoginLevel.TabIndex = 3;
this.lbl_LoginLevel.Text = "Admin";
this.lbl_LoginLevel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// led_State
//
this.led_State.BlinkColor = System.Drawing.Color.Lime;
this.led_State.BlinkInterval = 500;
this.led_State.BlinkOn = false;
this.led_State.Cursor = System.Windows.Forms.Cursors.Arrow;
this.led_State.Interacton = SeeSharpTools.JY.GUI.LED.InteractionStyle.Indicator;
this.led_State.Location = new System.Drawing.Point(159, 3);
this.led_State.Margin = new System.Windows.Forms.Padding(10, 26, 10, 26);
this.led_State.Name = "led_State";
this.led_State.OffColor = System.Drawing.Color.Gray;
this.led_State.OnColor = System.Drawing.Color.Lime;
this.led_State.Size = new System.Drawing.Size(25, 25);
this.led_State.Style = SeeSharpTools.JY.GUI.LED.LedStyle.Circular;
this.led_State.TabIndex = 20;
this.led_State.Value = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.BackColor = System.Drawing.Color.Transparent;
this.label1.Font = new System.Drawing.Font("微软雅黑", 9F);
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.label1.Location = new System.Drawing.Point(61, 28);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(34, 17);
this.label1.TabIndex = 34;
this.label1.Text = "MES";
//
// label6
//
this.label6.AutoSize = true;
this.label6.BackColor = System.Drawing.Color.Transparent;
this.label6.Font = new System.Drawing.Font("微软雅黑", 9F);
this.label6.ForeColor = System.Drawing.Color.White;
this.label6.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.label6.Location = new System.Drawing.Point(22, 28);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(29, 17);
this.label6.TabIndex = 33;
this.label6.Text = "PLC";
//
// led_RunState
//
this.led_RunState.BlinkColor = System.Drawing.Color.Lime;
this.led_RunState.BlinkInterval = 500;
this.led_RunState.BlinkOn = false;
this.led_RunState.Cursor = System.Windows.Forms.Cursors.Arrow;
this.led_RunState.Interacton = SeeSharpTools.JY.GUI.LED.InteractionStyle.Indicator;
this.led_RunState.Location = new System.Drawing.Point(112, 3);
this.led_RunState.Margin = new System.Windows.Forms.Padding(6, 9, 6, 9);
this.led_RunState.Name = "led_RunState";
this.led_RunState.OffColor = System.Drawing.Color.Gray;
this.led_RunState.OnColor = System.Drawing.Color.Lime;
this.led_RunState.Size = new System.Drawing.Size(25, 25);
this.led_RunState.Style = SeeSharpTools.JY.GUI.LED.LedStyle.Circular;
this.led_RunState.TabIndex = 17;
this.led_RunState.Value = false;
//
// label21
//
this.label21.AutoSize = true;
this.label21.BackColor = System.Drawing.Color.Transparent;
this.label21.Font = new System.Drawing.Font("微软雅黑", 9F);
this.label21.ForeColor = System.Drawing.Color.White;
this.label21.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.label21.Location = new System.Drawing.Point(151, 28);
this.label21.Name = "label21";
this.label21.Size = new System.Drawing.Size(44, 17);
this.label21.TabIndex = 24;
this.label21.Text = "STATE";
//
// led_MESState
//
this.led_MESState.BlinkColor = System.Drawing.Color.Lime;
this.led_MESState.BlinkInterval = 1000;
this.led_MESState.BlinkOn = false;
this.led_MESState.Cursor = System.Windows.Forms.Cursors.Arrow;
this.led_MESState.Interacton = SeeSharpTools.JY.GUI.LED.InteractionStyle.Indicator;
this.led_MESState.Location = new System.Drawing.Point(65, 3);
this.led_MESState.Margin = new System.Windows.Forms.Padding(6, 9, 6, 9);
this.led_MESState.Name = "led_MESState";
this.led_MESState.OffColor = System.Drawing.Color.Gray;
this.led_MESState.OnColor = System.Drawing.Color.Lime;
this.led_MESState.Size = new System.Drawing.Size(25, 25);
this.led_MESState.Style = SeeSharpTools.JY.GUI.LED.LedStyle.Circular;
this.led_MESState.TabIndex = 16;
this.led_MESState.Value = false;
//
// label18
//
this.label18.AutoSize = true;
this.label18.BackColor = System.Drawing.Color.Transparent;
this.label18.Font = new System.Drawing.Font("微软雅黑", 9F);
this.label18.ForeColor = System.Drawing.Color.White;
this.label18.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.label18.Location = new System.Drawing.Point(98, 28);
this.label18.Name = "label18";
this.label18.Size = new System.Drawing.Size(53, 17);
this.label18.TabIndex = 27;
this.label18.Text = "SERVER";
//
// led_PLCState
//
this.led_PLCState.BlinkColor = System.Drawing.Color.Lime;
this.led_PLCState.BlinkInterval = 1000;
this.led_PLCState.BlinkOn = false;
this.led_PLCState.Cursor = System.Windows.Forms.Cursors.Arrow;
this.led_PLCState.Interacton = SeeSharpTools.JY.GUI.LED.InteractionStyle.Indicator;
this.led_PLCState.Location = new System.Drawing.Point(25, 3);
this.led_PLCState.Margin = new System.Windows.Forms.Padding(5);
this.led_PLCState.Name = "led_PLCState";
this.led_PLCState.OffColor = System.Drawing.Color.Gray;
this.led_PLCState.OnColor = System.Drawing.Color.Lime;
this.led_PLCState.Size = new System.Drawing.Size(25, 25);
this.led_PLCState.Style = SeeSharpTools.JY.GUI.LED.LedStyle.Circular;
this.led_PLCState.TabIndex = 0;
this.led_PLCState.Value = false;
//
// panel3
//
this.panel3.BackgroundImage = global::LargeSquareOne.Properties.Resources.Alarm1;
this.panel3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.panel3.Controls.Add(this.lbl_DateTime);
this.panel3.Controls.Add(this.panel9);
this.panel3.Dock = System.Windows.Forms.DockStyle.Left;
this.panel3.Location = new System.Drawing.Point(0, 0);
this.panel3.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(737, 46);
this.panel3.TabIndex = 9;
//
// lbl_DateTime
//
this.lbl_DateTime.AutoSize = true;
this.lbl_DateTime.BackColor = System.Drawing.Color.Transparent;
this.lbl_DateTime.Font = new System.Drawing.Font("微软雅黑", 11.5F, System.Drawing.FontStyle.Bold);
this.lbl_DateTime.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.lbl_DateTime.ImeMode = System.Windows.Forms.ImeMode.NoControl;
this.lbl_DateTime.Location = new System.Drawing.Point(271, 12);
this.lbl_DateTime.Name = "lbl_DateTime";
this.lbl_DateTime.Size = new System.Drawing.Size(337, 22);
this.lbl_DateTime.TabIndex = 5;
this.lbl_DateTime.Text = "June 2, 2023 19:50:50 Monday Day Shift";
this.lbl_DateTime.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// panel9
//
this.panel9.BackColor = System.Drawing.Color.Transparent;
this.panel9.Controls.Add(this.led_MESState);
this.panel9.Controls.Add(this.led_PLCState);
this.panel9.Controls.Add(this.led_State);
this.panel9.Controls.Add(this.led_RunState);
this.panel9.Controls.Add(this.label21);
this.panel9.Controls.Add(this.label6);
this.panel9.Controls.Add(this.label1);
this.panel9.Controls.Add(this.label18);
this.panel9.Dock = System.Windows.Forms.DockStyle.Left;
this.panel9.Location = new System.Drawing.Point(0, 0);
this.panel9.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panel9.Name = "panel9";
this.panel9.Size = new System.Drawing.Size(210, 46);
this.panel9.TabIndex = 12;
//
// ucRollText1
//
this.ucRollText1.BackColor = System.Drawing.Color.Transparent;
this.ucRollText1.Font = new System.Drawing.Font("微软雅黑", 12F);
this.ucRollText1.ForeColor = System.Drawing.Color.White;
this.ucRollText1.IsChangeReset = false;
this.ucRollText1.IsExit = false;
this.ucRollText1.Location = new System.Drawing.Point(88, 0);
this.ucRollText1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.ucRollText1.MoveSleepTime = 80;
this.ucRollText1.Name = "ucRollText1";
this.ucRollText1.RollStyle = JinYuan.ControlLib.RollStyle.RightToLeft;
this.ucRollText1.Size = new System.Drawing.Size(631, 46);
this.ucRollText1.TabIndex = 0;
//
// panel5
//
this.panel5.Back = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.panel5.Controls.Add(this.panel8);
this.panel5.Controls.Add(this.panel7);
this.panel5.Controls.Add(this.panel3);
this.panel5.Dock = System.Windows.Forms.DockStyle.Top;
this.panel5.Location = new System.Drawing.Point(0, 116);
this.panel5.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panel5.Name = "panel5";
this.panel5.Size = new System.Drawing.Size(1921, 46);
this.panel5.TabIndex = 3;
this.panel5.Text = "panel5";
//
// panel8
//
this.panel8.BackgroundImage = global::LargeSquareOne.Properties.Resources.Alarm1;
this.panel8.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.panel8.Controls.Add(this.ucRollText1);
this.panel8.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel8.Location = new System.Drawing.Point(1175, 0);
this.panel8.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panel8.Name = "panel8";
this.panel8.Size = new System.Drawing.Size(746, 46);
this.panel8.TabIndex = 11;
//
// panel7
//
this.panel7.Controls.Add(this.btToggleMonitor);
this.panel7.Controls.Add(this.cmbModelType);
this.panel7.Controls.Add(this.txtMaterialCode);
this.panel7.Dock = System.Windows.Forms.DockStyle.Left;
this.panel7.Location = new System.Drawing.Point(737, 0);
this.panel7.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.panel7.Name = "panel7";
this.panel7.Size = new System.Drawing.Size(438, 46);
this.panel7.TabIndex = 10;
//
// btToggleMonitor
//
this.btToggleMonitor.DefaultBack = System.Drawing.Color.FromArgb(((int)(((byte)(18)))), ((int)(((byte)(184)))), ((int)(((byte)(61)))));
this.btToggleMonitor.Font = new System.Drawing.Font("Microsoft YaHei UI", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btToggleMonitor.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
this.btToggleMonitor.IconSvg = resources.GetString("btToggleMonitor.IconSvg");
this.btToggleMonitor.IconToggleAnimation = 300;
this.btToggleMonitor.Location = new System.Drawing.Point(161, 3);
this.btToggleMonitor.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.btToggleMonitor.Name = "btToggleMonitor";
this.btToggleMonitor.Size = new System.Drawing.Size(130, 41);
this.btToggleMonitor.TabIndex = 0;
this.btToggleMonitor.Text = "START";
this.btToggleMonitor.ToggleBackActive = System.Drawing.Color.FromArgb(((int)(((byte)(98)))), ((int)(((byte)(136)))), ((int)(((byte)(190)))));
this.btToggleMonitor.ToggleFore = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(246)))), ((int)(((byte)(250)))));
this.btToggleMonitor.Click += new System.EventHandler(this.btToggleMonitor_Click);
//
// cmbModelType
//
this.cmbModelType.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.cmbModelType.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(9)))), ((int)(((byte)(90)))), ((int)(((byte)(124)))));
this.cmbModelType.ContentItemsStyle.ItemBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(30)))), ((int)(((byte)(78)))));
this.cmbModelType.DropDownButton.BackNormalColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.cmbModelType.DropDownButton.DropDownFullArea = true;
this.cmbModelType.Font = new System.Drawing.Font("Microsoft YaHei UI", 12F);
this.cmbModelType.Location = new System.Drawing.Point(7, 7);
this.cmbModelType.Margin = new System.Windows.Forms.Padding(2);
this.cmbModelType.Name = "cmbModelType";
this.cmbModelType.Size = new System.Drawing.Size(130, 33);
this.cmbModelType.TabIndex = 17;
this.cmbModelType.SelectedItemsChanged += new System.EventHandler(this.cmbModelType_SelectedItemsChanged);
//
// txtMaterialCode
//
this.txtMaterialCode.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.txtMaterialCode.Font = new System.Drawing.Font("黑体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.txtMaterialCode.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(254)))), ((int)(((byte)(254)))), ((int)(((byte)(255)))));
this.txtMaterialCode.Location = new System.Drawing.Point(302, 5);
this.txtMaterialCode.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.txtMaterialCode.Name = "txtMaterialCode";
this.txtMaterialCode.ReadOnly = true;
this.txtMaterialCode.Size = new System.Drawing.Size(130, 37);
this.txtMaterialCode.TabIndex = 15;
//
// CorePanel
//
this.CorePanel.BackColor = System.Drawing.Color.Transparent;
this.CorePanel.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(9)))), ((int)(((byte)(90)))), ((int)(((byte)(124)))));
this.CorePanel.BordeWidth = 3;
this.CorePanel.BottomGap = 10;
this.CorePanel.Controls.Add(this.MainPanel);
this.CorePanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.CorePanel.LeftGap = 20;
this.CorePanel.Location = new System.Drawing.Point(0, 162);
this.CorePanel.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.CorePanel.Name = "CorePanel";
this.CorePanel.Padding = new System.Windows.Forms.Padding(23, 11, 23, 11);
this.CorePanel.RightGap = 20;
this.CorePanel.Size = new System.Drawing.Size(1921, 838);
this.CorePanel.TabIndex = 4;
this.CorePanel.TopGap = 10;
//
// MainPanel
//
this.MainPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.MainPanel.Location = new System.Drawing.Point(23, 11);
this.MainPanel.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
this.MainPanel.Name = "MainPanel";
this.MainPanel.Size = new System.Drawing.Size(1875, 816);
this.MainPanel.TabIndex = 0;
//
// FrmMain
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.ClientSize = new System.Drawing.Size(1921, 1000);
this.Controls.Add(this.CorePanel);
this.Controls.Add(this.panel5);
this.Controls.Add(this.pageHeader1);
this.Dark = true;
this.Font = new System.Drawing.Font("Cambria", 9F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
this.Mode = AntdUI.TAMode.Dark;
this.Name = "FrmMain";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmMain";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMain_FormClosing);
this.Load += new System.EventHandler(this.FrmNewMain_Load);
this.pageHeader1.ResumeLayout(false);
this.TopPanel.ResumeLayout(false);
this.panel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.panel3.ResumeLayout(false);
this.panel3.PerformLayout();
this.panel9.ResumeLayout(false);
this.panel9.PerformLayout();
this.panel5.ResumeLayout(false);
this.panel8.ResumeLayout(false);
this.panel7.ResumeLayout(false);
this.CorePanel.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private AntdUI.PageHeader pageHeader1;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.Label lblHeading;
private System.Windows.Forms.Label lblSubtitle;
private JinYuan.ControlLib.NaviButton2 nav_CPK;
private System.Windows.Forms.Label lblLogTitle;
private JinYuan.ControlLib.NaviButton2 nav_SetSystem;
private JinYuan.ControlLib.NaviButton2 nav_System;
private JinYuan.ControlLib.NaviButton2 nav_Monitor;
private JinYuan.ControlLib.NaviButton2 nav_DataMonitor;
private JinYuan.ControlLib.NaviButton2 nav_AlarmLog;
private JinYuan.ControlLib.NaviButton2 nav_UserInfo;
private JinYuan.ControlLib.NaviButton2 nav_HistotryData;
private AntdUI.Panel panel1;
private SeeSharpTools.JY.GUI.LED led_State;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label6;
private SeeSharpTools.JY.GUI.LED led_RunState;
private System.Windows.Forms.Label label21;
private SeeSharpTools.JY.GUI.LED led_MESState;
private System.Windows.Forms.Label label18;
private SeeSharpTools.JY.GUI.LED led_PLCState;
private System.Windows.Forms.Panel panel3;
private System.Windows.Forms.Label lbl_DateTime;
private System.Windows.Forms.Label lblMES;
private System.Windows.Forms.Label lbl_LoginName;
private System.Windows.Forms.Label lbl_LoginLevel;
private JinYuan.ControlLib.UCRollText ucRollText1;
private AntdUI.Button btnScale;
private AntdUI.Button btExit;
private AntdUI.Panel panel5;
private System.Windows.Forms.Panel panel9;
private System.Windows.Forms.Panel panel8;
private System.Windows.Forms.Panel panel7;
private AntdUI.Avatar avMesicon;
private AntdUI.Avatar avatar2;
private JinYuan.ControlLib.PanelExt CorePanel;
private System.Windows.Forms.Panel MainPanel;
private AntdUI.Button btToggleMonitor;
private AntdUI.Input txtMaterialCode;
private HML.DropDownListPlus cmbModelType;
private System.Windows.Forms.Panel TopPanel;
private AntdUI.Dropdown SwitchLanguage;
}
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+197
View File
@@ -0,0 +1,197 @@
namespace LargeSquareOne
{
partial class FrmMesParamMsgBoxWithAck
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
this.btn_Close = new System.Windows.Forms.Button();
this.btn_Sure = new System.Windows.Forms.Button();
this.btn_Cancel = new System.Windows.Forms.Button();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.lblMessage = new System.Windows.Forms.Label();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.SuspendLayout();
//
// btn_Close
//
this.btn_Close.BackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 15.5F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(569, 14);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 2;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = false;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// btn_Sure
//
this.btn_Sure.BackColor = System.Drawing.Color.Green;
this.btn_Sure.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Sure.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Sure.ForeColor = System.Drawing.Color.White;
this.btn_Sure.Location = new System.Drawing.Point(159, 358);
this.btn_Sure.Name = "btn_Sure";
this.btn_Sure.Size = new System.Drawing.Size(101, 36);
this.btn_Sure.TabIndex = 13;
this.btn_Sure.Text = "确定";
this.btn_Sure.UseVisualStyleBackColor = false;
this.btn_Sure.Click += new System.EventHandler(this.btn_Sure_Click);
//
// btn_Cancel
//
this.btn_Cancel.BackColor = System.Drawing.Color.Red;
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Cancel.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Cancel.ForeColor = System.Drawing.Color.White;
this.btn_Cancel.Location = new System.Drawing.Point(329, 358);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(101, 36);
this.btn_Cancel.TabIndex = 14;
this.btn_Cancel.Text = "取消";
this.btn_Cancel.UseVisualStyleBackColor = false;
this.btn_Cancel.Click += new System.EventHandler(this.btn_Cancel_Click);
//
// pictureBox1
//
this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
this.pictureBox1.Image = global::LargeSquareOne.Properties.Resources.黄色_警告;
this.pictureBox1.Location = new System.Drawing.Point(12, 12);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(45, 37);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pictureBox1.TabIndex = 16;
this.pictureBox1.TabStop = false;
//
// lblMessage
//
this.lblMessage.AutoSize = true;
this.lblMessage.BackColor = System.Drawing.Color.Transparent;
this.lblMessage.Font = new System.Drawing.Font("思源黑体 CN Bold", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMessage.ForeColor = System.Drawing.Color.Red;
this.lblMessage.Location = new System.Drawing.Point(63, 20);
this.lblMessage.Name = "lblMessage";
this.lblMessage.Size = new System.Drawing.Size(42, 23);
this.lblMessage.TabIndex = 15;
this.lblMessage.Text = "提示";
//
// dataGridView1
//
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
this.dataGridView1.AllowUserToResizeColumns = false;
this.dataGridView1.AllowUserToResizeRows = false;
this.dataGridView1.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(32)))), ((int)(((byte)(32)))), ((int)(((byte)(32)))));
this.dataGridView1.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dataGridView1.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(30)))), ((int)(((byte)(78)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 10F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 10F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dataGridView1.DefaultCellStyle = dataGridViewCellStyle2;
this.dataGridView1.EnableHeadersVisualStyles = false;
this.dataGridView1.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(146)))), ((int)(((byte)(235)))));
this.dataGridView1.Location = new System.Drawing.Point(12, 64);
this.dataGridView1.MultiSelect = false;
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.ReadOnly = true;
this.dataGridView1.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 10F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dataGridView1.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dataGridView1.RowHeadersVisible = false;
this.dataGridView1.RowHeadersWidth = 45;
this.dataGridView1.RowTemplate.Height = 23;
this.dataGridView1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dataGridView1.Size = new System.Drawing.Size(589, 278);
this.dataGridView1.TabIndex = 17;
this.dataGridView1.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dataGridView1_RowPostPaint);
//
// FrmMesParamMsgBoxWithAck
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 19F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(616, 410);
this.Controls.Add(this.dataGridView1);
this.Controls.Add(this.pictureBox1);
this.Controls.Add(this.lblMessage);
this.Controls.Add(this.btn_Cancel);
this.Controls.Add(this.btn_Sure);
this.Controls.Add(this.btn_Close);
this.DoubleBuffered = true;
this.Font = new System.Drawing.Font("微软雅黑", 10F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmMesParamMsgBoxWithAck";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmMsgBoxWithAck";
this.Load += new System.EventHandler(this.FrmMesParamMsgBoxWithAck_Load);
this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.Button btn_Sure;
private System.Windows.Forms.Button btn_Cancel;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.Label lblMessage;
private System.Windows.Forms.DataGridView dataGridView1;
}
}
@@ -0,0 +1,84 @@
using Language;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmMesParamMsgBoxWithAck : MultiLanguageForm
{
DataTable dataTable = new DataTable();
string strLblMessage = "";
public FrmMesParamMsgBoxWithAck(DataTable _dataTable, string _strLblMessage)
{
InitializeComponent();
this.TopMost = true;
dataTable = _dataTable;
strLblMessage = _strLblMessage;
this.Text = _strLblMessage;
}
private void btn_Sure_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
}
private void btn_Cancel_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.No;
this.Close();
}
private void btn_Close_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
}
#region 无边框拖动
private Point mPoint;
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
mPoint=new Point(e.X, e.Y);
}
private void Panel_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Location=new Point(this.Location.X+e.X-mPoint.X,this.Location.Y+e.Y-mPoint.Y);
}
}
#endregion
private void FrmMesParamMsgBoxWithAck_Load(object sender, EventArgs e)
{
dataGridView1.DataSource = dataTable;
lblMessage.Text = strLblMessage;
}
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//自动编号,与数据无关
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
e.RowBounds.Location.Y,
dataGridView1.RowHeadersWidth - 4,
e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics,
(e.RowIndex + 1).ToString(),
dataGridView1.RowHeadersDefaultCellStyle.Font,
rectangle,
dataGridView1.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.VerticalCenter | TextFormatFlags.Right);
}
}
}
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+817
View File
@@ -0,0 +1,817 @@
namespace LargeSquareOne
{
partial class FrmMonitor
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMonitor));
JinYuan.Models.ElectricEnergy electricEnergy1 = new JinYuan.Models.ElectricEnergy();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend1 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series1 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea2 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend2 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series2 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea3 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend3 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series3 = new System.Windows.Forms.DataVisualization.Charting.Series();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.MainPanel = new JinYuan.ControlLib.PanelEnhanced();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.tabMeters = new HML.TabControlPlus();
this.tabPagePlus1 = new HML.TabPagePlus();
this.EyMaterH1 = new JinYuan.ControlLib.UCElectricityMeterV();
this.panelExt1 = new JinYuan.ControlLib.PanelExt();
this.gpCapacityBox = new JinYuan.ControlLib.GroupBoxEX();
this.Chart12HourTotal = new System.Windows.Forms.DataVisualization.Charting.Chart();
this.panelExt2 = new JinYuan.ControlLib.PanelExt();
this.gpAlarmBox = new JinYuan.ControlLib.GroupBoxEX();
this.chartAlarmData = new System.Windows.Forms.DataVisualization.Charting.Chart();
this.gpNgBox = new JinYuan.ControlLib.GroupBoxEX();
this.chartNgShow = new System.Windows.Forms.DataVisualization.Charting.Chart();
this.panelExt3 = new JinYuan.ControlLib.PanelExt();
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
this.titleModeName = new JinYuan.ControlLib.TitleTime();
this.panel5 = new System.Windows.Forms.Panel();
this.proUtilizationRate = new JinYuan.ControlLib.ProcessEllipse();
this.label6 = new System.Windows.Forms.Label();
this.proPPM = new JinYuan.ControlLib.ProcessEllipse();
this.proTotalQty = new JinYuan.ControlLib.ArrTotalQty();
this.lblOkTotal = new System.Windows.Forms.Label();
this.proOKRatio = new HML.ArcProgress();
this.lblTotalQty = new System.Windows.Forms.Label();
this.proOKQty = new JinYuan.ControlLib.ProcessEllipse();
this.lblRate = new System.Windows.Forms.Label();
this.lblUtilizationRate = new System.Windows.Forms.Label();
this.titleRunTime = new JinYuan.ControlLib.TitleTime();
this.titleEqp_code = new JinYuan.ControlLib.TitleTime();
this.titleFactory_code = new JinYuan.ControlLib.TitleTime();
this.titleLine_No = new JinYuan.ControlLib.TitleTime();
this.titleStartTime = new JinYuan.ControlLib.TitleTime();
this.MainPanel.SuspendLayout();
this.tableLayoutPanel1.SuspendLayout();
this.tabMeters.SuspendLayout();
this.tabPagePlus1.SuspendLayout();
this.panelExt1.SuspendLayout();
this.gpCapacityBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.Chart12HourTotal)).BeginInit();
this.panelExt2.SuspendLayout();
this.gpAlarmBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.chartAlarmData)).BeginInit();
this.gpNgBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.chartNgShow)).BeginInit();
this.panelExt3.SuspendLayout();
this.tableLayoutPanel3.SuspendLayout();
this.panel5.SuspendLayout();
this.SuspendLayout();
//
// imageList1
//
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
this.imageList1.Images.SetKeyName(0, "info.png");
this.imageList1.Images.SetKeyName(1, "warning.png");
this.imageList1.Images.SetKeyName(2, "error.png");
//
// MainPanel
//
this.MainPanel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(32)))), ((int)(((byte)(32)))), ((int)(((byte)(32)))));
this.MainPanel.Controls.Add(this.tableLayoutPanel1);
this.MainPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.MainPanel.Location = new System.Drawing.Point(0, 0);
this.MainPanel.Margin = new System.Windows.Forms.Padding(0);
this.MainPanel.Name = "MainPanel";
this.MainPanel.Size = new System.Drawing.Size(1874, 818);
this.MainPanel.TabIndex = 0;
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.tableLayoutPanel1.ColumnCount = 3;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33334F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33334F));
this.tableLayoutPanel1.Controls.Add(this.tabMeters, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.panelExt1, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.panelExt2, 2, 0);
this.tableLayoutPanel1.Controls.Add(this.gpNgBox, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.panelExt3, 1, 0);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 4;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 23.64294F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 27.38239F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 16.28468F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 32.56936F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(1874, 818);
this.tableLayoutPanel1.TabIndex = 37;
//
// tabMeters
//
this.tabMeters.ContentBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.tabMeters.Controls.Add(this.tabPagePlus1);
this.tabMeters.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabMeters.Location = new System.Drawing.Point(3, 3);
this.tabMeters.Name = "tabMeters";
this.tabMeters.Picker.ItemFont = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.tabMeters.Size = new System.Drawing.Size(618, 187);
this.tabMeters.TabBarBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.tabMeters.TabIndex = 23;
this.tabMeters.TabItemAutoWidth = true;
this.tabMeters.TabItemBackEnterColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.tabMeters.TabItemBackNormalColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.tabMeters.TabItemBackSelectedColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.tabMeters.TabItemFont = new System.Drawing.Font("微软雅黑", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.tabMeters.TabItemIcoSize = new System.Drawing.Size(32, 32);
this.tabMeters.TabItemSize = new System.Drawing.Size(150, 30);
//
// tabPagePlus1
//
this.tabPagePlus1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.tabPagePlus1.Controls.Add(this.EyMaterH1);
this.tabPagePlus1.Location = new System.Drawing.Point(1, 31);
this.tabPagePlus1.Name = "tabPagePlus1";
this.tabPagePlus1.Padding = new System.Windows.Forms.Padding(3);
this.tabPagePlus1.Size = new System.Drawing.Size(616, 155);
this.tabPagePlus1.TabIndex = 0;
this.tabPagePlus1.Text = "Meter1";
//
// EyMaterH1
//
this.EyMaterH1.BackColor = System.Drawing.Color.Transparent;
this.EyMaterH1.Dock = System.Windows.Forms.DockStyle.Fill;
electricEnergy1.AccumulatedElectricity = null;
electricEnergy1.ActivePower = null;
electricEnergy1.ct = null;
electricEnergy1.PhaseCurrentA = null;
electricEnergy1.PhaseCurrentB = null;
electricEnergy1.PhaseCurrentC = null;
electricEnergy1.PhasePowerA = null;
electricEnergy1.PhasePowerB = null;
electricEnergy1.PhasePowerC = null;
electricEnergy1.PhaseVoltageA = null;
electricEnergy1.PhaseVoltageB = null;
electricEnergy1.PhaseVoltageC = null;
electricEnergy1.PowerFactor = null;
electricEnergy1.pt = null;
this.EyMaterH1.ElectricEnergy = electricEnergy1;
this.EyMaterH1.Font = new System.Drawing.Font("微软雅黑", 7.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.EyMaterH1.Location = new System.Drawing.Point(3, 3);
this.EyMaterH1.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3);
this.EyMaterH1.Name = "EyMaterH1";
this.EyMaterH1.Size = new System.Drawing.Size(610, 149);
this.EyMaterH1.TabIndex = 0;
this.EyMaterH1.Text1 = "A相电压";
this.EyMaterH1.Text10 = "总有功功率";
this.EyMaterH1.Text11 = "总功率因数";
this.EyMaterH1.Text12 = "电压变比";
this.EyMaterH1.Text13 = "电流变比";
this.EyMaterH1.Text14 = "累计电能";
this.EyMaterH1.Text2 = "B相电压";
this.EyMaterH1.Text3 = "C相电压";
this.EyMaterH1.Text4 = "A相电流";
this.EyMaterH1.Text5 = "B相电流";
this.EyMaterH1.Text6 = "C相电流";
this.EyMaterH1.Text7 = "A相功率";
this.EyMaterH1.Text8 = "B相功率";
this.EyMaterH1.Text9 = "C相功率";
//
// panelExt1
//
this.panelExt1.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.panelExt1.BordeWidth = 2;
this.panelExt1.BottomGap = 1;
this.tableLayoutPanel1.SetColumnSpan(this.panelExt1, 3);
this.panelExt1.Controls.Add(this.gpCapacityBox);
this.panelExt1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelExt1.LeftGap = 0;
this.panelExt1.Location = new System.Drawing.Point(3, 420);
this.panelExt1.Name = "panelExt1";
this.panelExt1.RightGap = 0;
this.tableLayoutPanel1.SetRowSpan(this.panelExt1, 2);
this.panelExt1.Size = new System.Drawing.Size(1868, 395);
this.panelExt1.TabIndex = 41;
this.panelExt1.TopGap = 0;
//
// gpCapacityBox
//
this.gpCapacityBox.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.gpCapacityBox.Controls.Add(this.Chart12HourTotal);
this.gpCapacityBox.Dock = System.Windows.Forms.DockStyle.Fill;
this.gpCapacityBox.ForeColor = System.Drawing.Color.White;
this.gpCapacityBox.Location = new System.Drawing.Point(0, 0);
this.gpCapacityBox.Name = "gpCapacityBox";
this.gpCapacityBox.Size = new System.Drawing.Size(1868, 395);
this.gpCapacityBox.TabIndex = 0;
this.gpCapacityBox.TabStop = false;
this.gpCapacityBox.Text = "当天每2小时产能";
//
// Chart12HourTotal
//
this.Chart12HourTotal.BackColor = System.Drawing.Color.Transparent;
this.Chart12HourTotal.BorderlineColor = System.Drawing.Color.Blue;
chartArea1.AxisX.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea1.AxisX.LineColor = System.Drawing.Color.White;
chartArea1.AxisX.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisX.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea1.AxisX.MinorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisX.MinorTickMark.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisX.TitleFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
chartArea1.AxisX.TitleForeColor = System.Drawing.Color.White;
chartArea1.AxisX2.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea1.AxisX2.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisX2.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea1.AxisY.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea1.AxisY.LineColor = System.Drawing.Color.White;
chartArea1.AxisY.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisY.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea1.AxisY.MinorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisY.MinorTickMark.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisY.TitleFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
chartArea1.AxisY.TitleForeColor = System.Drawing.Color.White;
chartArea1.AxisY2.Enabled = System.Windows.Forms.DataVisualization.Charting.AxisEnabled.True;
chartArea1.AxisY2.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea1.AxisY2.LineColor = System.Drawing.Color.White;
chartArea1.AxisY2.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea1.AxisY2.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea1.AxisY2.ScaleBreakStyle.LineColor = System.Drawing.Color.White;
chartArea1.AxisY2.TitleFont = new System.Drawing.Font("微软雅黑", 9F);
chartArea1.AxisY2.TitleForeColor = System.Drawing.Color.White;
chartArea1.BackColor = System.Drawing.Color.Transparent;
chartArea1.BorderColor = System.Drawing.Color.Empty;
chartArea1.Name = "ChartArea1";
this.Chart12HourTotal.ChartAreas.Add(chartArea1);
this.Chart12HourTotal.Dock = System.Windows.Forms.DockStyle.Fill;
legend1.BackColor = System.Drawing.Color.Transparent;
legend1.Docking = System.Windows.Forms.DataVisualization.Charting.Docking.Top;
legend1.ForeColor = System.Drawing.Color.White;
legend1.Name = "Legend1";
this.Chart12HourTotal.Legends.Add(legend1);
this.Chart12HourTotal.Location = new System.Drawing.Point(3, 22);
this.Chart12HourTotal.Margin = new System.Windows.Forms.Padding(0);
this.Chart12HourTotal.Name = "Chart12HourTotal";
this.Chart12HourTotal.Palette = System.Windows.Forms.DataVisualization.Charting.ChartColorPalette.Fire;
this.Chart12HourTotal.PaletteCustomColors = new System.Drawing.Color[] {
System.Drawing.Color.DarkTurquoise,
System.Drawing.Color.PaleGoldenrod,
System.Drawing.Color.Green};
series1.ChartArea = "ChartArea1";
series1.IsXValueIndexed = true;
series1.Legend = "Legend1";
series1.Name = "Series1";
this.Chart12HourTotal.Series.Add(series1);
this.Chart12HourTotal.Size = new System.Drawing.Size(1862, 370);
this.Chart12HourTotal.TabIndex = 4;
this.Chart12HourTotal.Text = "chart1";
//
// panelExt2
//
this.panelExt2.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(55)))));
this.panelExt2.BordeWidth = 2;
this.panelExt2.BottomGap = 0;
this.panelExt2.Controls.Add(this.gpAlarmBox);
this.panelExt2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelExt2.LeftGap = 0;
this.panelExt2.Location = new System.Drawing.Point(1251, 3);
this.panelExt2.Name = "panelExt2";
this.panelExt2.RightGap = 0;
this.tableLayoutPanel1.SetRowSpan(this.panelExt2, 2);
this.panelExt2.Size = new System.Drawing.Size(620, 411);
this.panelExt2.TabIndex = 42;
this.panelExt2.TopGap = 0;
//
// gpAlarmBox
//
this.gpAlarmBox.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.gpAlarmBox.Controls.Add(this.chartAlarmData);
this.gpAlarmBox.Dock = System.Windows.Forms.DockStyle.Fill;
this.gpAlarmBox.ForeColor = System.Drawing.Color.White;
this.gpAlarmBox.Location = new System.Drawing.Point(0, 0);
this.gpAlarmBox.Name = "gpAlarmBox";
this.gpAlarmBox.Size = new System.Drawing.Size(620, 411);
this.gpAlarmBox.TabIndex = 0;
this.gpAlarmBox.TabStop = false;
this.gpAlarmBox.Text = "报警Top10统计";
//
// chartAlarmData
//
this.chartAlarmData.BackColor = System.Drawing.Color.Transparent;
this.chartAlarmData.BorderlineColor = System.Drawing.Color.Blue;
chartArea2.AxisX.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea2.AxisX.LineColor = System.Drawing.Color.White;
chartArea2.AxisX.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea2.AxisX.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea2.AxisX.ScaleBreakStyle.LineColor = System.Drawing.Color.White;
chartArea2.AxisX.TitleFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
chartArea2.AxisX.TitleForeColor = System.Drawing.Color.White;
chartArea2.AxisY.IntervalAutoMode = System.Windows.Forms.DataVisualization.Charting.IntervalAutoMode.VariableCount;
chartArea2.AxisY.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea2.AxisY.LineColor = System.Drawing.Color.White;
chartArea2.AxisY.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea2.AxisY.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea2.AxisY.MinorGrid.LineColor = System.Drawing.Color.White;
chartArea2.AxisY.TitleFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
chartArea2.AxisY.TitleForeColor = System.Drawing.Color.White;
chartArea2.BackColor = System.Drawing.Color.Transparent;
chartArea2.BorderColor = System.Drawing.Color.Empty;
chartArea2.BorderWidth = 2;
chartArea2.Name = "ChartArea1";
this.chartAlarmData.ChartAreas.Add(chartArea2);
this.chartAlarmData.Dock = System.Windows.Forms.DockStyle.Fill;
legend2.BackColor = System.Drawing.Color.Transparent;
legend2.Docking = System.Windows.Forms.DataVisualization.Charting.Docking.Top;
legend2.Enabled = false;
legend2.ForeColor = System.Drawing.Color.White;
legend2.IsEquallySpacedItems = true;
legend2.Name = "Legend1";
this.chartAlarmData.Legends.Add(legend2);
this.chartAlarmData.Location = new System.Drawing.Point(3, 22);
this.chartAlarmData.Name = "chartAlarmData";
this.chartAlarmData.Palette = System.Windows.Forms.DataVisualization.Charting.ChartColorPalette.None;
this.chartAlarmData.PaletteCustomColors = new System.Drawing.Color[] {
System.Drawing.Color.DarkTurquoise};
series2.ChartArea = "ChartArea1";
series2.IsXValueIndexed = true;
series2.Legend = "Legend1";
series2.Name = "Series1";
this.chartAlarmData.Series.Add(series2);
this.chartAlarmData.Size = new System.Drawing.Size(614, 386);
this.chartAlarmData.TabIndex = 6;
this.chartAlarmData.Text = "chart1";
//
// gpNgBox
//
this.gpNgBox.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.gpNgBox.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.gpNgBox.Controls.Add(this.chartNgShow);
this.gpNgBox.Dock = System.Windows.Forms.DockStyle.Fill;
this.gpNgBox.ForeColor = System.Drawing.Color.White;
this.gpNgBox.Location = new System.Drawing.Point(3, 196);
this.gpNgBox.Name = "gpNgBox";
this.gpNgBox.Size = new System.Drawing.Size(618, 218);
this.gpNgBox.TabIndex = 43;
this.gpNgBox.TabStop = false;
this.gpNgBox.Text = "不良项统计";
//
// chartNgShow
//
this.chartNgShow.BackColor = System.Drawing.Color.Transparent;
this.chartNgShow.BorderlineColor = System.Drawing.Color.Blue;
chartArea3.AxisX.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea3.AxisX.LineColor = System.Drawing.Color.White;
chartArea3.AxisX.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea3.AxisX.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea3.AxisX.TitleFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
chartArea3.AxisX.TitleForeColor = System.Drawing.Color.White;
chartArea3.AxisY.LabelStyle.ForeColor = System.Drawing.Color.White;
chartArea3.AxisY.LineColor = System.Drawing.Color.White;
chartArea3.AxisY.MajorGrid.LineColor = System.Drawing.Color.Transparent;
chartArea3.AxisY.MajorTickMark.LineColor = System.Drawing.Color.White;
chartArea3.AxisY.TitleFont = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
chartArea3.AxisY.TitleForeColor = System.Drawing.Color.White;
chartArea3.BackColor = System.Drawing.Color.Transparent;
chartArea3.BorderColor = System.Drawing.Color.Empty;
chartArea3.Name = "ChartArea1";
this.chartNgShow.ChartAreas.Add(chartArea3);
this.chartNgShow.Dock = System.Windows.Forms.DockStyle.Fill;
legend3.BackColor = System.Drawing.Color.Transparent;
legend3.Enabled = false;
legend3.ForeColor = System.Drawing.Color.White;
legend3.IsEquallySpacedItems = true;
legend3.Name = "Legend1";
this.chartNgShow.Legends.Add(legend3);
this.chartNgShow.Location = new System.Drawing.Point(3, 22);
this.chartNgShow.Name = "chartNgShow";
this.chartNgShow.Palette = System.Windows.Forms.DataVisualization.Charting.ChartColorPalette.None;
this.chartNgShow.PaletteCustomColors = new System.Drawing.Color[] {
System.Drawing.Color.DarkTurquoise,
System.Drawing.Color.PaleGoldenrod,
System.Drawing.Color.Green};
series3.ChartArea = "ChartArea1";
series3.IsXValueIndexed = true;
series3.Legend = "Legend1";
series3.Name = "Series1";
this.chartNgShow.Series.Add(series3);
this.chartNgShow.Size = new System.Drawing.Size(612, 193);
this.chartNgShow.TabIndex = 5;
this.chartNgShow.Text = "chart1";
//
// panelExt3
//
this.panelExt3.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.panelExt3.BordeWidth = 3;
this.panelExt3.BottomGap = 1;
this.panelExt3.Controls.Add(this.tableLayoutPanel3);
this.panelExt3.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelExt3.LeftGap = 0;
this.panelExt3.Location = new System.Drawing.Point(627, 3);
this.panelExt3.Name = "panelExt3";
this.panelExt3.RightGap = 0;
this.tableLayoutPanel1.SetRowSpan(this.panelExt3, 2);
this.panelExt3.Size = new System.Drawing.Size(618, 411);
this.panelExt3.TabIndex = 44;
this.panelExt3.TopGap = 0;
//
// tableLayoutPanel3
//
this.tableLayoutPanel3.ColumnCount = 2;
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel3.Controls.Add(this.titleModeName, 0, 0);
this.tableLayoutPanel3.Controls.Add(this.panel5, 0, 3);
this.tableLayoutPanel3.Controls.Add(this.titleRunTime, 0, 2);
this.tableLayoutPanel3.Controls.Add(this.titleEqp_code, 1, 2);
this.tableLayoutPanel3.Controls.Add(this.titleFactory_code, 1, 0);
this.tableLayoutPanel3.Controls.Add(this.titleLine_No, 1, 1);
this.tableLayoutPanel3.Controls.Add(this.titleStartTime, 0, 1);
this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel3.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel3.Name = "tableLayoutPanel3";
this.tableLayoutPanel3.RowCount = 6;
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 40F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 40F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 40F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 270F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 51F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 54F));
this.tableLayoutPanel3.Size = new System.Drawing.Size(618, 411);
this.tableLayoutPanel3.TabIndex = 0;
//
// titleModeName
//
this.titleModeName.BackColor = System.Drawing.Color.Transparent;
this.titleModeName.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("titleModeName.BackgroundImage")));
this.titleModeName.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.titleModeName.Dock = System.Windows.Forms.DockStyle.Fill;
this.titleModeName.Font = new System.Drawing.Font("Cambria", 10.5F);
this.titleModeName.Location = new System.Drawing.Point(4, 5);
this.titleModeName.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.titleModeName.Name = "titleModeName";
this.titleModeName.Size = new System.Drawing.Size(301, 30);
this.titleModeName.TabIndex = 8;
this.titleModeName.Title = "G11";
this.titleModeName.TitleFontSize = 12F;
this.titleModeName.TitleName = "生产型号";
this.titleModeName.TitleNameForColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.titleModeName.TtfPath = "";
//
// panel5
//
this.panel5.BackgroundImage = global::LargeSquareOne.Properties.Resources.组_178_拷贝1;
this.panel5.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.tableLayoutPanel3.SetColumnSpan(this.panel5, 2);
this.panel5.Controls.Add(this.proUtilizationRate);
this.panel5.Controls.Add(this.label6);
this.panel5.Controls.Add(this.proPPM);
this.panel5.Controls.Add(this.proTotalQty);
this.panel5.Controls.Add(this.lblOkTotal);
this.panel5.Controls.Add(this.proOKRatio);
this.panel5.Controls.Add(this.lblTotalQty);
this.panel5.Controls.Add(this.proOKQty);
this.panel5.Controls.Add(this.lblRate);
this.panel5.Controls.Add(this.lblUtilizationRate);
this.panel5.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel5.Location = new System.Drawing.Point(3, 123);
this.panel5.Name = "panel5";
this.tableLayoutPanel3.SetRowSpan(this.panel5, 2);
this.panel5.Size = new System.Drawing.Size(612, 315);
this.panel5.TabIndex = 4;
//
// proUtilizationRate
//
this.proUtilizationRate.BackColor = System.Drawing.Color.Transparent;
this.proUtilizationRate.BackEllipseColor = System.Drawing.Color.Transparent;
this.proUtilizationRate.CoreEllipseColor = System.Drawing.Color.Transparent;
this.proUtilizationRate.FloatValue = 0F;
this.proUtilizationRate.IntValue = 0;
this.proUtilizationRate.IsShowCoreEllipseBorder = true;
this.proUtilizationRate.Location = new System.Drawing.Point(486, 61);
this.proUtilizationRate.Margin = new System.Windows.Forms.Padding(2);
this.proUtilizationRate.MaxValue = 100;
this.proUtilizationRate.Name = "proUtilizationRate";
this.proUtilizationRate.ShowStyleType = JinYuan.ControlLib.ShowStyleType.Ring;
this.proUtilizationRate.ShowType = JinYuan.ControlLib.ShowType.稼动率;
this.proUtilizationRate.Size = new System.Drawing.Size(100, 100);
this.proUtilizationRate.TabIndex = 22;
this.proUtilizationRate.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(128)))));
this.proUtilizationRate.ValueFloatOrInt = JinYuan.ControlLib.ValueFloatOrInt.Float;
this.proUtilizationRate.ValueMargin = 2;
this.proUtilizationRate.ValueType = JinYuan.ControlLib.ValueType.Percent;
this.proUtilizationRate.ValueWidth = 10;
//
// label6
//
this.label6.BackColor = System.Drawing.Color.Transparent;
this.label6.Font = new System.Drawing.Font("Cambria", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label6.ForeColor = System.Drawing.Color.White;
this.label6.Location = new System.Drawing.Point(397, 2);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(87, 25);
this.label6.TabIndex = 32;
this.label6.Text = "PPM";
this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// proPPM
//
this.proPPM.BackColor = System.Drawing.Color.Transparent;
this.proPPM.BackEllipseColor = System.Drawing.Color.Transparent;
this.proPPM.CoreEllipseColor = System.Drawing.Color.Transparent;
this.proPPM.FloatValue = 0F;
this.proPPM.IntValue = 0;
this.proPPM.IsShowCoreEllipseBorder = true;
this.proPPM.Location = new System.Drawing.Point(387, 18);
this.proPPM.MaxValue = 50000;
this.proPPM.Name = "proPPM";
this.proPPM.ShowStyleType = JinYuan.ControlLib.ShowStyleType.Ring;
this.proPPM.ShowType = JinYuan.ControlLib.ShowType.生产数;
this.proPPM.Size = new System.Drawing.Size(102, 112);
this.proPPM.TabIndex = 35;
this.proPPM.ValueColor = System.Drawing.Color.Aquamarine;
this.proPPM.ValueFloatOrInt = JinYuan.ControlLib.ValueFloatOrInt.Int;
this.proPPM.ValueMargin = 1;
this.proPPM.ValueType = JinYuan.ControlLib.ValueType.Absolute;
this.proPPM.ValueWidth = 10;
//
// proTotalQty
//
this.proTotalQty.BackColor = System.Drawing.Color.Transparent;
this.proTotalQty.Location = new System.Drawing.Point(128, 238);
this.proTotalQty.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.proTotalQty.Name = "proTotalQty";
this.proTotalQty.Size = new System.Drawing.Size(361, 65);
this.proTotalQty.TabIndex = 31;
this.proTotalQty.Tag = "生产总数";
this.proTotalQty.TotalValue = 0;
//
// lblOkTotal
//
this.lblOkTotal.BackColor = System.Drawing.Color.Transparent;
this.lblOkTotal.Font = new System.Drawing.Font("Cambria", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblOkTotal.ForeColor = System.Drawing.Color.White;
this.lblOkTotal.Location = new System.Drawing.Point(91, 3);
this.lblOkTotal.Name = "lblOkTotal";
this.lblOkTotal.Size = new System.Drawing.Size(136, 37);
this.lblOkTotal.TabIndex = 26;
this.lblOkTotal.Text = "良品总数";
this.lblOkTotal.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// proOKRatio
//
this.proOKRatio.AnimationEnabled = true;
this.proOKRatio.ArcAngleSize = 360;
this.proOKRatio.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
this.proOKRatio.ForeColor = System.Drawing.Color.White;
this.proOKRatio.Location = new System.Drawing.Point(33, 78);
this.proOKRatio.Name = "proOKRatio";
this.proOKRatio.Size = new System.Drawing.Size(80, 80);
this.proOKRatio.TabIndex = 34;
this.proOKRatio.ThicknessProportion = 10F;
this.proOKRatio.TotalBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
this.proOKRatio.ValueBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
//
// lblTotalQty
//
this.lblTotalQty.BackColor = System.Drawing.Color.Transparent;
this.lblTotalQty.Font = new System.Drawing.Font("Cambria", 22F, System.Drawing.FontStyle.Bold);
this.lblTotalQty.ForeColor = System.Drawing.Color.White;
this.lblTotalQty.Location = new System.Drawing.Point(189, 200);
this.lblTotalQty.Name = "lblTotalQty";
this.lblTotalQty.Size = new System.Drawing.Size(254, 44);
this.lblTotalQty.TabIndex = 28;
this.lblTotalQty.Text = "生产总数";
this.lblTotalQty.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// proOKQty
//
this.proOKQty.BackColor = System.Drawing.Color.Transparent;
this.proOKQty.BackEllipseColor = System.Drawing.Color.Transparent;
this.proOKQty.CoreEllipseColor = System.Drawing.Color.Transparent;
this.proOKQty.FloatValue = 0F;
this.proOKQty.IntValue = 0;
this.proOKQty.IsShowCoreEllipseBorder = true;
this.proOKQty.Location = new System.Drawing.Point(110, 32);
this.proOKQty.MaxValue = 50000;
this.proOKQty.Name = "proOKQty";
this.proOKQty.ShowStyleType = JinYuan.ControlLib.ShowStyleType.Ring;
this.proOKQty.ShowType = JinYuan.ControlLib.ShowType.生产数;
this.proOKQty.Size = new System.Drawing.Size(100, 100);
this.proOKQty.TabIndex = 4;
this.proOKQty.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(128)))));
this.proOKQty.ValueFloatOrInt = JinYuan.ControlLib.ValueFloatOrInt.Int;
this.proOKQty.ValueMargin = 1;
this.proOKQty.ValueType = JinYuan.ControlLib.ValueType.Absolute;
this.proOKQty.ValueWidth = 10;
//
// lblRate
//
this.lblRate.BackColor = System.Drawing.Color.Transparent;
this.lblRate.Font = new System.Drawing.Font("Cambria", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblRate.ForeColor = System.Drawing.Color.White;
this.lblRate.Location = new System.Drawing.Point(3, 32);
this.lblRate.Name = "lblRate";
this.lblRate.Size = new System.Drawing.Size(111, 52);
this.lblRate.TabIndex = 30;
this.lblRate.Text = "优率";
this.lblRate.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// lblUtilizationRate
//
this.lblUtilizationRate.BackColor = System.Drawing.Color.Transparent;
this.lblUtilizationRate.Font = new System.Drawing.Font("Cambria", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblUtilizationRate.ForeColor = System.Drawing.Color.White;
this.lblUtilizationRate.Location = new System.Drawing.Point(490, 18);
this.lblUtilizationRate.Name = "lblUtilizationRate";
this.lblUtilizationRate.Size = new System.Drawing.Size(107, 46);
this.lblUtilizationRate.TabIndex = 25;
this.lblUtilizationRate.Text = "稼动率";
this.lblUtilizationRate.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// titleRunTime
//
this.titleRunTime.BackColor = System.Drawing.Color.Transparent;
this.titleRunTime.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("titleRunTime.BackgroundImage")));
this.titleRunTime.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.titleRunTime.Dock = System.Windows.Forms.DockStyle.Fill;
this.titleRunTime.Font = new System.Drawing.Font("Cambria", 10.5F);
this.titleRunTime.Location = new System.Drawing.Point(4, 85);
this.titleRunTime.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.titleRunTime.Name = "titleRunTime";
this.titleRunTime.Size = new System.Drawing.Size(301, 30);
this.titleRunTime.TabIndex = 1;
this.titleRunTime.Title = "2023/08/17 10:10:10";
this.titleRunTime.TitleFontSize = 12F;
this.titleRunTime.TitleName = "开机时间";
this.titleRunTime.TitleNameForColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.titleRunTime.TtfPath = "";
//
// titleEqp_code
//
this.titleEqp_code.BackColor = System.Drawing.Color.Transparent;
this.titleEqp_code.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("titleEqp_code.BackgroundImage")));
this.titleEqp_code.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.titleEqp_code.Dock = System.Windows.Forms.DockStyle.Fill;
this.titleEqp_code.Font = new System.Drawing.Font("Cambria", 10.5F);
this.titleEqp_code.Location = new System.Drawing.Point(313, 85);
this.titleEqp_code.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.titleEqp_code.Name = "titleEqp_code";
this.titleEqp_code.Size = new System.Drawing.Size(301, 30);
this.titleEqp_code.TabIndex = 5;
this.titleEqp_code.Title = "EVEDL14L1ZJHJ01";
this.titleEqp_code.TitleFontSize = 12F;
this.titleEqp_code.TitleName = "设备编号";
this.titleEqp_code.TitleNameForColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.titleEqp_code.TtfPath = "";
//
// titleFactory_code
//
this.titleFactory_code.BackColor = System.Drawing.Color.Transparent;
this.titleFactory_code.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("titleFactory_code.BackgroundImage")));
this.titleFactory_code.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.titleFactory_code.Dock = System.Windows.Forms.DockStyle.Fill;
this.titleFactory_code.Font = new System.Drawing.Font("Cambria", 10.5F);
this.titleFactory_code.Location = new System.Drawing.Point(313, 5);
this.titleFactory_code.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.titleFactory_code.Name = "titleFactory_code";
this.titleFactory_code.Size = new System.Drawing.Size(301, 30);
this.titleFactory_code.TabIndex = 2;
this.titleFactory_code.Title = "14J";
this.titleFactory_code.TitleFontSize = 12F;
this.titleFactory_code.TitleName = "工厂代号";
this.titleFactory_code.TitleNameForColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.titleFactory_code.TtfPath = "";
//
// titleLine_No
//
this.titleLine_No.BackColor = System.Drawing.Color.Transparent;
this.titleLine_No.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("titleLine_No.BackgroundImage")));
this.titleLine_No.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.titleLine_No.Dock = System.Windows.Forms.DockStyle.Fill;
this.titleLine_No.Font = new System.Drawing.Font("Cambria", 10.5F);
this.titleLine_No.Location = new System.Drawing.Point(313, 45);
this.titleLine_No.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.titleLine_No.Name = "titleLine_No";
this.titleLine_No.Size = new System.Drawing.Size(301, 30);
this.titleLine_No.TabIndex = 3;
this.titleLine_No.Title = "14J-ZZ-L1";
this.titleLine_No.TitleFontSize = 12F;
this.titleLine_No.TitleName = "线体编号";
this.titleLine_No.TitleNameForColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.titleLine_No.TtfPath = "";
//
// titleStartTime
//
this.titleStartTime.BackColor = System.Drawing.Color.Transparent;
this.titleStartTime.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("titleStartTime.BackgroundImage")));
this.titleStartTime.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.titleStartTime.Dock = System.Windows.Forms.DockStyle.Fill;
this.titleStartTime.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.titleStartTime.Location = new System.Drawing.Point(4, 45);
this.titleStartTime.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.titleStartTime.Name = "titleStartTime";
this.titleStartTime.Size = new System.Drawing.Size(301, 30);
this.titleStartTime.TabIndex = 0;
this.titleStartTime.Title = "2023/08/17 10:10:10";
this.titleStartTime.TitleFontSize = 12F;
this.titleStartTime.TitleName = "运行时间";
this.titleStartTime.TitleNameForColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(233)))), ((int)(((byte)(255)))));
this.titleStartTime.TtfPath = "";
//
// FrmMonitor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(41)))), ((int)(((byte)(96)))));
this.ClientSize = new System.Drawing.Size(1874, 818);
this.ControlBox = false;
this.Controls.Add(this.MainPanel);
this.Font = new System.Drawing.Font("微软雅黑", 10.5F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmMonitor";
this.ShowIcon = false;
this.ShowInTaskbar = false;
this.Text = "集中监控";
this.Load += new System.EventHandler(this.FrmMonitor_Load);
this.MainPanel.ResumeLayout(false);
this.tableLayoutPanel1.ResumeLayout(false);
this.tabMeters.ResumeLayout(false);
this.tabPagePlus1.ResumeLayout(false);
this.panelExt1.ResumeLayout(false);
this.gpCapacityBox.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.Chart12HourTotal)).EndInit();
this.panelExt2.ResumeLayout(false);
this.gpAlarmBox.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.chartAlarmData)).EndInit();
this.gpNgBox.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.chartNgShow)).EndInit();
this.panelExt3.ResumeLayout(false);
this.tableLayoutPanel3.ResumeLayout(false);
this.panel5.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private JinYuan.ControlLib.PanelEnhanced MainPanel;
private System.Windows.Forms.ImageList imageList1;
private JinYuan.ControlLib.ProcessEllipse proUtilizationRate;
private System.Windows.Forms.Label lblOkTotal;
private System.Windows.Forms.Label lblUtilizationRate;
private System.Windows.Forms.Label lblRate;
private System.Windows.Forms.Label lblTotalQty;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Panel panel5;
private HML.ArcProgress proOKRatio;
internal JinYuan.ControlLib.ArrTotalQty proTotalQty;
private JinYuan.ControlLib.ProcessEllipse proOKQty;
private JinYuan.ControlLib.TitleTime titleEqp_code;
private JinYuan.ControlLib.TitleTime titleFactory_code;
private JinYuan.ControlLib.TitleTime titleLine_No;
private JinYuan.ControlLib.TitleTime titleStartTime;
private JinYuan.ControlLib.TitleTime titleRunTime;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
private JinYuan.ControlLib.TitleTime titleModeName;
private System.Windows.Forms.DataVisualization.Charting.Chart chartAlarmData;
private System.Windows.Forms.DataVisualization.Charting.Chart Chart12HourTotal;
private System.Windows.Forms.DataVisualization.Charting.Chart chartNgShow;
private JinYuan.ControlLib.ProcessEllipse proPPM;
private HML.TabControlPlus tabMeters;
private HML.TabPagePlus tabPagePlus1;
private JinYuan.ControlLib.PanelExt panelExt1;
private JinYuan.ControlLib.PanelExt panelExt2;
private JinYuan.ControlLib.GroupBoxEX gpCapacityBox;
private JinYuan.ControlLib.GroupBoxEX gpAlarmBox;
private JinYuan.ControlLib.GroupBoxEX gpNgBox;
private JinYuan.ControlLib.PanelExt panelExt3;
private JinYuan.ControlLib.UCElectricityMeterV EyMaterH1;
}
}
+473
View File
@@ -0,0 +1,473 @@
using JinYuan.Helper;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Text;
using System.IO;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting;
namespace LargeSquareOne
{
public partial class FrmMonitor : MultiLanguageForm
{
private static readonly object uiLock = new object();
private static FrmMonitor _instance;
private readonly CancellationTokenSource _cts = new CancellationTokenSource();
private readonly PrivateFontCollection _font = new PrivateFontCollection();
private Font _myFont;
public static FrmMonitor Instance
{
get
{
lock (uiLock)
{
return _instance ??= new FrmMonitor();
}
}
}
public FrmMonitor()
{
InitializeComponent();
InitializeFormSettings();
//LoadCustomFont();
this.FormClosing += FrmMonitor_FormClosing;
}
private void InitializeFormSettings()
{
this.SetStyle(ControlStyles.AllPaintingInWmPaint |
ControlStyles.DoubleBuffer |
ControlStyles.ResizeRedraw |
ControlStyles.Selectable |
ControlStyles.SupportsTransparentBackColor, true);
}
private void LoadCustomFont()
{
try
{
var fontPath = Path.Combine(Environment.CurrentDirectory, "Assts", "Fonts", "FZY4JW.ttf");
_font.AddFontFile(fontPath);
var myFontFamily = new FontFamily(_font.Families[0].Name, _font);
_myFont = new Font(myFontFamily, 20, FontStyle.Bold);
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "加载字体异常".Translated() + $":{ex.Message}");
}
}
private void FrmMonitor_FormClosing(object sender, FormClosingEventArgs e)
{
_cts.Cancel();
_font?.Dispose();
_myFont?.Dispose();
}
protected override void WndProc(ref Message m)
{
if (m.Msg == 0x0014) return; // 禁掉清除背景消息
base.WndProc(ref m);
}
private async void FrmMonitor_Load(object sender, EventArgs e)
{
try
{
SetChart();
await RefreshAllDataAsync();
await StartPeriodicRefreshAsync(_cts.Token);
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "窗体加载异常".Translated() + $":{ex.Message}");
}
}
private void SetChart()
{
try
{
#region 24小时统计
Chart12HourTotal.Series.Clear();
Chart12HourTotal.ChartAreas[0].AxisY.Minimum = 0;
Chart12HourTotal.ChartAreas[0].AxisY.Maximum = 2000;
ChartHelper.AddSeries(Chart12HourTotal, "投入".Translated(), SeriesChartType.Column,
ChartValueType.Auto, MarkerStyle.Diamond, 8, Color.DarkTurquoise,
Color.Aqua, "", false, true);
ChartHelper.AddSeries(Chart12HourTotal, "产出".Translated(), SeriesChartType.Column,
ChartValueType.Auto, MarkerStyle.Diamond, 8, Color.PaleGoldenrod,
Color.PaleGoldenrod, "", false, true);
ChartHelper.AddSeries(Chart12HourTotal, "优率".Translated(), SeriesChartType.Spline,
ChartValueType.String, MarkerStyle.Circle, 8, Color.Lime,
Color.Lime, "#VAL{P}", true, true);
ChartHelper.SetStyle(Chart12HourTotal, Color.Transparent, Color.White);
ChartHelper.SetLegend(Chart12HourTotal, Docking.Left, StringAlignment.Center,
Color.Transparent, Color.White);
ChartHelper.SetXY(Chart12HourTotal, "时间".Translated(), "数值".Translated(), -45, StringAlignment.Center,
Color.White, Color.White, AxisArrowStyle.None, 1, true);
ChartHelper.SetMajorGrid(Chart12HourTotal, Color.Transparent, 20, 2);
#endregion
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "图表初始化异常".Translated() + $":{ex.Message}");
}
}
private async Task StartPeriodicRefreshAsync(CancellationToken ct)
{
while (!ct.IsCancellationRequested)
{
try
{
await RefreshAllDataAsync();
await Task.Delay(2000, ct);
}
catch (OperationCanceledException)
{
break;
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "定时刷新异常".Translated() + $":{ex.Message}");
await Task.Delay(1000, ct);
}
}
}
private async Task RefreshAllDataAsync()
{
var tasks = new[]
{
Refish12ProdQtyAsync(),
RefreshXiaoLvDataAsync(),
RefreshChatTop10AlarmDataAsync(),
RefreshChatNGDataAsync()
};
await Task.WhenAll(tasks);
}
private async Task Refish12ProdQtyAsync()
{
await Task.Run(() =>
{
if (IsDisposed) return;
this.InvokeIfRequired(() =>
{
var data = CommonMethods.Lst_Prod12HourData; // CommonMethods.Lst_Prod12HourData?.Count > 0 ? CommonMethods.Lst_Prod12HourData : MockDataGenerator.Generate12HourData();
UpdateChart12HourData(data);
});
});
}
private void UpdateChart12HourData(List<Chart12HourData> data)
{
try
{
var maxValue = data.Max(x => x.ProdIn);
Chart12HourTotal.ChartAreas[0].AxisY.Minimum = 0;
Chart12HourTotal.ChartAreas[0].AxisY.Maximum = (int)maxValue + 1500;
// 直接使用数据,不需要额外排序
var x1 = data.Select(c => c.DisplayTime).ToList();
var y1 = data.Select(c => c.ProdIn).ToList();
var y2 = data.Select(c => c.ProdOut).ToList();
var y3 = data.Select(c => c.OKRatio).ToList();
Chart12HourTotal.Series[0].Points.DataBindXY(x1, y1);
Chart12HourTotal.Series[1].Points.DataBindXY(x1, y2);
Chart12HourTotal.Series[2].Points.DataBindXY(x1, y3);
// 设置X轴标签的角度,提高可读性
Chart12HourTotal.ChartAreas[0].AxisX.LabelStyle.Angle = 0;
// 确保显示所有标签
Chart12HourTotal.ChartAreas[0].AxisX.Interval = 1;
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "更新12小时数据异常".Translated() + $":{ex.Message}");
}
}
// 效率数据也可以添加模拟数据
private async Task RefreshXiaoLvDataAsync()
{
await Task.Run(() =>
{
if (IsDisposed) return;
// 使用实际数据或模拟数据
var utilizationRate = Convert.ToDouble(CommonMethods.JiaDL) * 100; // CommonMethods.JiaDL >= 0
//? Convert.ToDouble(CommonMethods.JiaDL) * 100
//: MockDataGenerator._random.Next(60, 95);
var totalQty = CommonMethods.TotalQty;
//CommonMethods.TotalQty >= 0
// ? CommonMethods.TotalQty
// : MockDataGenerator._random.Next(1000, 5000);
var okQty = CommonMethods.ProOKQty;
//CommonMethods.ProOKQty >= 0
// ? CommonMethods.ProOKQty
// : MockDataGenerator._random.Next(900, (int)totalQty);
var yieldRate = totalQty == 0 ? 0 :
Convert.ToDouble((Convert.ToDouble(okQty) /
Convert.ToDouble(totalQty) * 100.0)
.ToString("f2"));
this.InvokeIfRequired(() =>
{
UpdateEfficiencyControls(utilizationRate, yieldRate, (int)totalQty, (int)okQty);
UpdateTimeDisplay();
UpdateEnergyDisplay();
});
});
}
private double CalculateYieldRate()
{
if (CommonMethods.TotalQty == 0) return 0;
return Convert.ToDouble((Convert.ToDouble(CommonMethods.ProOKQty) /
Convert.ToDouble(CommonMethods.TotalQty) * 100.0)
.ToString("f2"));
}
private void UpdateEfficiencyControls(double utilizationRate, double yieldRate, int totalQty, int okQty)
{
try
{
titleModeName.Title = CommonMethods.mesConfig.ModelName ?? "测试型号";
titleFactory_code.Title = CommonMethods.mesConfig.siteCode ?? "TEST001";
titleLine_No.Title = CommonMethods.mesConfig.lineCode ?? "LINE01";
titleEqp_code.Title = CommonMethods.mesConfig.equipNum ?? "EQP001";
proUtilizationRate.FloatValue = (float)utilizationRate;
proPPM.IntValue = (int)CommonMethods.Ppm; // (CommonMethods.Ppm > 0 ? CommonMethods.Ppm : MockDataGenerator._random.Next(100, 1000));
proOKQty.IntValue = okQty;
proOKRatio.Value = yieldRate;
proTotalQty.TotalValue = totalQty;
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "更新效率控件异常".Translated() + $":{ex.Message}");
}
}
private void UpdateTimeDisplay()
{
try
{
if (CommonMethods.PlcOpenAndRunTime?.Count > 0)
{
titleStartTime.Title = $"{CommonMethods.PlcOpenAndRunTime[0]}:" +
$"{CommonMethods.PlcOpenAndRunTime[1]}:" +
$"{CommonMethods.PlcOpenAndRunTime[2]}";
titleRunTime.Title = $"{CommonMethods.PlcOpenAndRunTime[3]}:" +
$"{CommonMethods.PlcOpenAndRunTime[4]}:" +
$"{CommonMethods.PlcOpenAndRunTime[5]}";
}
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "更新时间显示异常".Translated() + $":{ex.Message}");
}
}
private void UpdateEnergyDisplay()
{
try
{
if (CommonMethods.listElectricEnergy?.Count > 0)
{
EyMaterH1.ElectricEnergy = CommonMethods.listElectricEnergy[0];
}
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "更新能源显示异常".Translated() + $":{ex.Message}");
}
}
private async Task RefreshChatTop10AlarmDataAsync()
{
await Task.Run(() =>
{
if (IsDisposed) return;
this.InvokeIfRequired(() =>
{
UpdateAlarmChart();
});
});
}
private void UpdateAlarmChart()
{
try
{
var alarmData = CommonMethods.Lst_AlarmTop10_Qty;
// CommonMethods.Lst_AlarmTop10_Qty?.Count > 0
//? CommonMethods.Lst_AlarmTop10_Qty
//: MockDataGenerator.GenerateAlarmTop10Data();
if (alarmData?.Count > 0)
{
chartAlarmData.Series.Clear();
chartAlarmData.Titles.Clear();
var maxValue = alarmData.Max(x => x.DataCount);
chartAlarmData.ChartAreas[0].AxisY.Minimum = 0;
chartAlarmData.ChartAreas[0].AxisY.Maximum = (int)maxValue + 20;
foreach (var item in alarmData)
{
ChartHelper.AddSeries(chartAlarmData, item.DataType,
SeriesChartType.Column, ChartValueType.Auto,
MarkerStyle.Diamond, 4, Color.DarkTurquoise,
Color.White, "", false, true);
}
ConfigureAlarmChart();
var xData = alarmData.Select(c => c.DataType).ToList();
var yData = alarmData.Select(c => c.DataCount).ToList();
chartAlarmData.Series[0].Points.DataBindXY(xData, yData);
}
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "更新报警图表异常".Translated() + $":{ex.Message}");
}
}
private void ConfigureAlarmChart()
{
ChartHelper.SetTitle(chartAlarmData, "报警TOP10".Translated(),
new Font("微软雅黑", 12), Docking.Top, Color.White);
ChartHelper.SetStyle(chartAlarmData, Color.Transparent, Color.White);
ChartHelper.SetLegend(chartAlarmData, Docking.Top,
StringAlignment.Center, Color.Transparent, Color.White);
ChartHelper.SetXY(chartAlarmData, "报警项".Translated(), "次数".Translated(), -45,
StringAlignment.Center, Color.White, Color.White,
AxisArrowStyle.None, 1, false);
ChartHelper.SetMajorGrid(chartAlarmData, Color.Transparent, 20, 2);
}
private void BindAlarmChartData()
{
var xData = CommonMethods.Lst_AlarmTop10_Qty.Select(c => c.DataType).ToList();
var yData = CommonMethods.Lst_AlarmTop10_Qty.Select(c => c.DataCount).ToList();
chartAlarmData.Series[0].Points.DataBindXY(xData, yData);
}
private async Task RefreshChatNGDataAsync()
{
await Task.Run(() =>
{
if (IsDisposed) return;
this.InvokeIfRequired(() =>
{
UpdateNGChart();
});
});
}
private void UpdateNGChart()
{
try
{
var ngData = CommonMethods.Lst_DefectTypeQty;
//CommonMethods.Lst_DefectTypeQty?.Count > 0
// ? CommonMethods.Lst_DefectTypeQty
// : MockDataGenerator.GenerateNGData();
if (ngData?.Count > 0)
{
chartNgShow.Series.Clear();
chartNgShow.Titles.Clear();
var maxValue = ngData.Max(x => x.DataCount);
chartNgShow.ChartAreas[0].AxisY.Minimum = 0;
chartNgShow.ChartAreas[0].AxisY.Maximum = (int)maxValue + 100;
foreach (var item in ngData)
{
ChartHelper.AddSeries(chartNgShow, item.DataType,
SeriesChartType.Column, ChartValueType.Auto,
MarkerStyle.Diamond, 4, Color.Red,
Color.White, "", false, true);
}
ConfigureNGChart();
var xData = ngData.Select(c => c.DataType).ToList();
var yData = ngData.Select(c => c.DataCount).ToList();
chartNgShow.Series[0].Points.DataBindXY(xData, yData);
}
}
catch (Exception ex)
{
CommonMethods.AddLog(true, "更新不良图表异常".Translated() + $":{ex.Message}");
}
}
private void ConfigureNGChart()
{
ChartHelper.SetTitle(chartNgShow, "各不良项".Translated(),
new Font("微软雅黑", 12), Docking.Top, Color.White);
ChartHelper.SetStyle(chartNgShow, Color.Transparent, Color.White);
ChartHelper.SetLegend(chartNgShow, Docking.Top,
StringAlignment.Center, Color.Transparent, Color.White);
ChartHelper.SetXY(chartNgShow, "项名".Translated(), "数值".Translated(), 0,
StringAlignment.Center, Color.White, Color.White,
AxisArrowStyle.None, 1, false);
ChartHelper.SetMajorGrid(chartNgShow, Color.Transparent, 1, 1);
}
private void BindNGChartData()
{
var xData = CommonMethods.Lst_DefectTypeQty.Select(c => c.DataType).ToList();
var yData = CommonMethods.Lst_DefectTypeQty.Select(c => c.DataCount).ToList();
chartNgShow.Series[0].Points.DataBindXY(xData, yData);
}
}
// 扩展方法
public static class ControlExtensions
{
public static void InvokeIfRequired(this Control control, Action action)
{
if (control.IsDisposed) return;
if (control.InvokeRequired)
control.BeginInvoke(action);
else
action();
}
}
}
File diff suppressed because it is too large Load Diff
+141
View File
@@ -0,0 +1,141 @@
namespace LargeSquareOne
{
partial class FrmMsgBoxOutWithAck
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.lbl_Title = new System.Windows.Forms.Label();
this.lbl_Content = new System.Windows.Forms.Label();
this.btn_Sure = new System.Windows.Forms.Button();
this.pic_TitleImage = new System.Windows.Forms.PictureBox();
this.btn_Close = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.pic_TitleImage)).BeginInit();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("微软雅黑", 15F);
this.lbl_Title.ForeColor = System.Drawing.Color.White;
this.lbl_Title.Location = new System.Drawing.Point(46, 9);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(92, 27);
this.lbl_Title.TabIndex = 0;
this.lbl_Title.Text = "退出系统";
//
// lbl_Content
//
this.lbl_Content.BackColor = System.Drawing.Color.Transparent;
this.lbl_Content.Font = new System.Drawing.Font("微软雅黑", 15F);
this.lbl_Content.ForeColor = System.Drawing.Color.White;
this.lbl_Content.Location = new System.Drawing.Point(2, 111);
this.lbl_Content.Name = "lbl_Content";
this.lbl_Content.Size = new System.Drawing.Size(437, 78);
this.lbl_Content.TabIndex = 3;
this.lbl_Content.Text = "是否确认要退出系统?";
this.lbl_Content.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// btn_Sure
//
this.btn_Sure.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Sure.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Sure.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Sure.ForeColor = System.Drawing.Color.White;
this.btn_Sure.Location = new System.Drawing.Point(104, 234);
this.btn_Sure.Name = "btn_Sure";
this.btn_Sure.Size = new System.Drawing.Size(258, 36);
this.btn_Sure.TabIndex = 13;
this.btn_Sure.Text = "确定";
this.btn_Sure.UseVisualStyleBackColor = false;
this.btn_Sure.Click += new System.EventHandler(this.btn_Sure_Click);
//
// pic_TitleImage
//
this.pic_TitleImage.BackColor = System.Drawing.Color.Transparent;
this.pic_TitleImage.ErrorImage = null;
this.pic_TitleImage.Image = global::LargeSquareOne.Properties.Resources.warning;
this.pic_TitleImage.Location = new System.Drawing.Point(2, 3);
this.pic_TitleImage.Name = "pic_TitleImage";
this.pic_TitleImage.Size = new System.Drawing.Size(45, 41);
this.pic_TitleImage.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pic_TitleImage.TabIndex = 14;
this.pic_TitleImage.TabStop = false;
//
// btn_Close
//
this.btn_Close.BackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(29)))), ((int)(((byte)(84)))));
this.btn_Close.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 15.5F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(395, 1);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 15;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = false;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// FrmMsgBoxOutWithAck
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 19F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(439, 312);
this.Controls.Add(this.btn_Close);
this.Controls.Add(this.pic_TitleImage);
this.Controls.Add(this.btn_Sure);
this.Controls.Add(this.lbl_Content);
this.Controls.Add(this.lbl_Title);
this.DoubleBuffered = true;
this.Font = new System.Drawing.Font("微软雅黑", 10F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmMsgBoxOutWithAck";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmMsgBoxWithAck";
this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
((System.ComponentModel.ISupportInitialize)(this.pic_TitleImage)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Label lbl_Content;
private System.Windows.Forms.Button btn_Sure;
private System.Windows.Forms.PictureBox pic_TitleImage;
private System.Windows.Forms.Button btn_Close;
}
}
+69
View File
@@ -0,0 +1,69 @@
using Language;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmMsgBoxOutWithAck : MultiLanguageForm
{
public FrmMsgBoxOutWithAck(int type,string content, string title)
{
InitializeComponent();
this.TopMost = true;
this.lbl_Content.Text = content;
this.lbl_Title.Text = title;
switch(type)
{
case 1:
this.pic_TitleImage.Image = LargeSquareOne.Properties.Resources.info;
break;
case 2:
this.pic_TitleImage.Image = LargeSquareOne.Properties.Resources.warning;
break;
case 3:
this.pic_TitleImage.Image = LargeSquareOne.Properties.Resources.error;
break;
}
}
#region 无边框拖动
private Point mPoint;
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
mPoint=new Point(e.X, e.Y);
}
private void Panel_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Location=new Point(this.Location.X+e.X-mPoint.X,this.Location.Y+e.Y-mPoint.Y);
}
}
#endregion
private void btn_Sure_Click(object sender, EventArgs e)
{
this.Close();
}
private void btn_Close_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+139
View File
@@ -0,0 +1,139 @@
namespace LargeSquareOne
{
partial class FrmMsgBoxWithAck
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.lbl_Title = new System.Windows.Forms.Label();
this.btn_Close = new System.Windows.Forms.Button();
this.lbl_Content = new System.Windows.Forms.Label();
this.btn_Sure = new System.Windows.Forms.Button();
this.btn_Cancel = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// lbl_Title
//
this.lbl_Title.AutoSize = true;
this.lbl_Title.BackColor = System.Drawing.Color.Transparent;
this.lbl_Title.Font = new System.Drawing.Font("微软雅黑", 15F);
this.lbl_Title.ForeColor = System.Drawing.Color.White;
this.lbl_Title.Location = new System.Drawing.Point(12, 6);
this.lbl_Title.Name = "lbl_Title";
this.lbl_Title.Size = new System.Drawing.Size(92, 27);
this.lbl_Title.TabIndex = 0;
this.lbl_Title.Text = "退出系统";
//
// btn_Close
//
this.btn_Close.BackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 15.5F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(397, 1);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 2;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = false;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// lbl_Content
//
this.lbl_Content.BackColor = System.Drawing.Color.Transparent;
this.lbl_Content.Font = new System.Drawing.Font("微软雅黑", 15F);
this.lbl_Content.ForeColor = System.Drawing.Color.White;
this.lbl_Content.Location = new System.Drawing.Point(2, 132);
this.lbl_Content.Name = "lbl_Content";
this.lbl_Content.Size = new System.Drawing.Size(437, 27);
this.lbl_Content.TabIndex = 3;
this.lbl_Content.Text = "是否确认要退出系统?";
this.lbl_Content.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// btn_Sure
//
this.btn_Sure.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Sure.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Sure.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Sure.ForeColor = System.Drawing.Color.White;
this.btn_Sure.Location = new System.Drawing.Point(86, 233);
this.btn_Sure.Name = "btn_Sure";
this.btn_Sure.Size = new System.Drawing.Size(101, 36);
this.btn_Sure.TabIndex = 13;
this.btn_Sure.Text = "确定";
this.btn_Sure.UseVisualStyleBackColor = false;
this.btn_Sure.Click += new System.EventHandler(this.btn_Sure_Click);
//
// btn_Cancel
//
this.btn_Cancel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Cancel.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Cancel.ForeColor = System.Drawing.Color.White;
this.btn_Cancel.Location = new System.Drawing.Point(256, 233);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(101, 36);
this.btn_Cancel.TabIndex = 14;
this.btn_Cancel.Text = "取消";
this.btn_Cancel.UseVisualStyleBackColor = false;
this.btn_Cancel.Click += new System.EventHandler(this.btn_Cancel_Click);
//
// FrmMsgBoxWithAck
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 19F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(439, 312);
this.Controls.Add(this.btn_Cancel);
this.Controls.Add(this.btn_Sure);
this.Controls.Add(this.lbl_Content);
this.Controls.Add(this.btn_Close);
this.Controls.Add(this.lbl_Title);
this.Font = new System.Drawing.Font("微软雅黑", 10F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmMsgBoxWithAck";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmMsgBoxWithAck";
this.Shown += new System.EventHandler(this.FrmMsgBoxWithAck_Shown);
this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label lbl_Title;
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.Label lbl_Content;
private System.Windows.Forms.Button btn_Sure;
private System.Windows.Forms.Button btn_Cancel;
}
}
+71
View File
@@ -0,0 +1,71 @@
using Language;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmMsgBoxWithAck : MultiLanguageForm
{
public FrmMsgBoxWithAck(string content, string title)
{
InitializeComponent();
this.TopMost = true;
this.content = content;
this.title = title;
this.lbl_Content.Text = content;
this.lbl_Title.Text = title;
}
private void btn_Sure_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
}
private void btn_Cancel_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
}
private void btn_Close_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
}
#region 无边框拖动
private Point mPoint;
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
mPoint = new Point(e.X, e.Y);
}
private void Panel_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);
}
}
#endregion
string content;
string title;
private void FrmMsgBoxWithAck_Shown(object sender, EventArgs e)
{
this.lbl_Content.Text = this.content;
this.lbl_Title.Text = this.title;
}
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
File diff suppressed because it is too large Load Diff
+994
View File
@@ -0,0 +1,994 @@
using JinYuan.ControlLib;
using JinYuan.MES.Models;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using Microsoft.Win32;
using MiniExcelLibs;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmSystemSet : MultiLanguageForm
{
private string devPath = string.Empty;
private string PlcConfigFilePath = "plc_config.xlsx";
private List<PLCConfig> plcConfigs;
private string PlcCommunicationConfigPath;
private string variableConfigPath;
private List<string> PLCTypes = new List<string>();
private bool isEditing = false;
private int editingRowIndex = -1;
private readonly string configFolderPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Config");
public FrmSystemSet(string devPath)
{
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);
PlcConfigFilePath = Path.Combine(configFolderPath, "Device.xlsx");
PlcCommunicationConfigPath = Path.Combine(configFolderPath, "Group.xlsx");
variableConfigPath = Path.Combine(configFolderPath, "Variable.xlsx");
devPath = Path.Combine(configFolderPath, "Configure.ini");
PLCTypes.AddRange(new string[] { "OmronFinsTCP", "OmronCipNet" });
SetupDataGridView();
LoadPLCConfig();
this.tog_AutoStart.IsChecked = CommonMethods.sysConfig.AutoStart;
this.tog_AutoLogin.IsChecked = CommonMethods.sysConfig.AutoLogin;
this.tog_AutoLock.IsChecked = CommonMethods.sysConfig.AutoLock;
this.up_LockPeriod.CurrentValue = CommonMethods.sysConfig.LockPeriod;
this.tog_AutoQieHuanM.IsChecked = CommonMethods.sysConfig.AutoQieHuanM;
this.up_QieHuanPeriod.CurrentValue = CommonMethods.sysConfig.QieHuanMPeriod;
this.up_ShowSeriesCount.CurrentValue = CommonMethods.sysConfig.ShowSeriesCount;
this.tog_IsDebugMode.IsChecked = CommonMethods.sysConfig.IsDebugMode;
this.tog_SwipeCardMode.IsChecked = CommonMethods.sysConfig.SwipeCardMode;
this.tog_OpenMesModel.IsChecked = CommonMethods.sysConfig.MesModeSwitching;
this.tog_GetMesParam.IsChecked = CommonMethods.sysConfig.GetMesParam;
this.tog_SaveThreadTime.IsChecked = CommonMethods.sysConfig.SaveThreadTime;
this.tog_AutoStart.CheckedChanged += new System.EventHandler(this.tog_AutoStart_CheckedChanged);
this.tog_AutoLogin.CheckedChanged += new System.EventHandler(this.tog_AutoLogin_CheckedChanged);
this.tog_AutoLock.CheckedChanged += new System.EventHandler(this.tog_AutoLock_CheckedChanged);
this.up_LockPeriod.ValueChanged += new System.EventHandler(this.up_LockPeriod_ValueChanged);
this.tog_AutoQieHuanM.CheckedChanged += new System.EventHandler(this.tog_AutoQieHuanM_CheckedChanged);
this.up_QieHuanPeriod.ValueChanged += new System.EventHandler(this.up_QieHuanPeriod_ValueChanged);
this.up_ShowSeriesCount.ValueChanged += new System.EventHandler(this.up_ShowSeriesCount_ValueChanged);
this.devPath = devPath;
this.txtFactory_code.Text = CommonMethods.mesConfig.siteCode;
this.txtline_No.Text = CommonMethods.mesConfig.lineCode;
this.txtEqp_code.Text = CommonMethods.mesConfig.equipNum;
this.txtEmployeeAuthCheck.Text = CommonMethods.mesConfig.EmployeeAuthCheck;
this.txtMaterialInputInfo.Text = CommonMethods.mesConfig.MaterialInputInfo;
this.txtDeviceParamRequest.Text = CommonMethods.mesConfig.DeviceParamRequest;
this.txtDeviceParamChange.Text = CommonMethods.mesConfig.DeviceParamChange;
this.txtProductInStation.Text = CommonMethods.mesConfig.ProductInStation;
this.txtProductProcessParams.Text = CommonMethods.mesConfig.ProductProcessParams;
this.txtProductResultParams.Text = CommonMethods.mesConfig.ProductResultParams;
this.txtProductOutStation.Text = CommonMethods.mesConfig.ProductOutStation;
this.txtDeviceAlarm.Text = CommonMethods.mesConfig.DeviceAlarm;
this.txtDeviceStatus.Text = CommonMethods.mesConfig.DeviceStatus;
this.txtEnergyConsumption.Text = CommonMethods.mesConfig.EnergyConsumption;
this.txtAnemometer.Text = CommonMethods.mesConfig.Anemometer;
}
/// <summary>
/// 初始化DataGrid
/// </summary>
private void SetupDataGridView()
{
// 设置基本属性
dgvPlcConfigs.AutoGenerateColumns = false;
dgvPlcConfigs.MultiSelect = false;
// 添加数据列
dgvPlcConfigs.Columns.AddRange(new DataGridViewColumn[]
{
new DataGridViewTextBoxColumn
{
Name = "PlcNum",
HeaderText = "PLC编号",
DataPropertyName = "PlcNum",
ReadOnly = true,
Width = 80,
ValueType = typeof(int)
},
new DataGridViewComboBoxColumn
{
Name = "PLCType",
HeaderText = "PLC类型",
DataPropertyName = "PLCType",
DataSource = new List<string>(PLCTypes), // 使用新列表避免引用问题
Width = 160,
ValueType = typeof(string),
FlatStyle = FlatStyle.Flat,
DefaultCellStyle = new DataGridViewCellStyle
{
BackColor = Color.FromArgb(14, 23, 38), // 深色背景
ForeColor = Color.White, // 白色文字
SelectionBackColor = Color.FromArgb(0, 122, 204), // 选中时的背景色
SelectionForeColor = Color.White, // 选中时的文字颜色
Font = new Font("微软雅黑", 9F) // 字体设置
}
},
new DataGridViewTextBoxColumn
{
Name = "IPAddress",
HeaderText = "IP地址",
DataPropertyName = "IPAddress",
Width = 120,
ValueType = typeof(string)
},
new DataGridViewTextBoxColumn
{
Name = "Port",
HeaderText = "端口号",
DataPropertyName = "Port",
Width = 80,
ValueType = typeof(string)
},
new DataGridViewTextBoxColumn
{
Name = "HeartBeat",
HeaderText = "心跳地址",
DataPropertyName = "HeartBeat",
Width = 100,
ValueType = typeof(string)
},
new DataGridViewCheckBoxColumn
{
Name = "IsHeartBeat",
HeaderText = "心跳状态",
DataPropertyName = "IsHeartBeat",
Width = 80,
ValueType = typeof(bool),
TrueValue = true,
FalseValue = false
},
new DataGridViewCheckBoxColumn
{
Name = "IsActive",
HeaderText = "激活状态",
DataPropertyName = "IsActive",
Width = 80,
ValueType = typeof(bool),
TrueValue = true,
FalseValue = false
},
new DataGridViewTextBoxColumn
{
Name = "Remark",
HeaderText = "备注",
DataPropertyName = "Remark",
Width = 150,
ValueType = typeof(string)
},
new DataGridViewButtonColumn
{
Name = "Edit",
HeaderText = "操作",
Text = "修改".Translated(),
UseColumnTextForButtonValue = true,
Width = 80
},
new DataGridViewButtonColumn
{
Name = "Delete",
HeaderText = "",
Text = "删除".Translated(),
UseColumnTextForButtonValue = true,
Width = 80
},
new DataGridViewButtonColumn
{
Name = "CommConfig",
HeaderText = "设置",
Text = "通信组".Translated(),
UseColumnTextForButtonValue = true,
Width = 80
},
new DataGridViewButtonColumn
{
Name = "VariableConfig",
HeaderText = "",
Text = "变量".Translated(),
UseColumnTextForButtonValue = true,
Width = 80
},
});
// 设置列为只读
SetColumnsReadOnly(false);
// 绑定事件
dgvPlcConfigs.CellClick += DgvPlcConfigs_CellClick;
dgvPlcConfigs.CellValidating += DgvPlcConfigs_CellValidating;
dgvPlcConfigs.CellValueChanged += DgvPlcConfigs_CellValueChanged;
dgvPlcConfigs.DataError += DgvPlcConfigs_DataError;
// 设置自动调整行高
dgvPlcConfigs.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
dgvPlcConfigs.RowHeadersVisible = false;
}
private void SetColumnsReadOnly(bool readOnly)
{
foreach (DataGridViewColumn col in dgvPlcConfigs.Columns)
{
// PlcNum 列始终保持只读
if (col.Name == "PlcNum")
{
col.ReadOnly = true;
continue;
}
// 按钮列不需要设置 ReadOnly 属性
if (col is DataGridViewButtonColumn)
continue;
// 其他列根据参数设置
col.ReadOnly = readOnly;
}
}
/// <summary>
/// 加载PLCConfig配置文件
/// </summary>
private void LoadPLCConfig()
{
try
{
if (File.Exists(PlcConfigFilePath))
{
using (var stream = File.OpenRead(PlcConfigFilePath))
{
var devices = MiniExcel.Query<PLCConfig>(stream).ToList();
plcConfigs = devices.Select(device => new PLCConfig
{
PlcNum = device.PlcNum,
PLCType = device.PLCType,
IPAddress = device.IPAddress,
Port = device.Port.ToString(),
HeartBeat = device.HeartBeat,
IsHeartBeat = device.IsHeartBeat,
IsActive = device.IsActive,
Remark = device.Remark,
}).ToList();
}
}
else
{
plcConfigs = new List<PLCConfig>();
}
RefreshDataGridView();
}
catch (Exception ex)
{
MessageBox.Show($"加载配置文件失败:{ex.Message}", "错误",
MessageBoxButtons.OK, MessageBoxIcon.Error);
plcConfigs = new List<PLCConfig>();
}
}
private void DgvPlcConfigs_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0) return;
var columnName = dgvPlcConfigs.Columns[e.ColumnIndex].Name;
// 如果正在编辑其他行,阻止操作
if (isEditing && editingRowIndex != e.RowIndex)
{
MessageBox.Show("请先完成当前编辑操作", "提示",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
var plcConfig = plcConfigs[e.RowIndex];
switch (columnName)
{
case "Edit":
HandleEdit(e.RowIndex);
break;
case "CommConfig":
HandleCommConfig(plcConfig);
break;
case "VariableConfig":
HandleVariableConfig(plcConfig);
break;
case "Delete":
HandleDelete(e.RowIndex, plcConfig);
break;
}
}
// 相应地,在处理编辑状态时,也需要修改 HandleEdit 方法
private void HandleEdit(int rowIndex)
{
if (!isEditing)
{
// 开始编辑
isEditing = true;
editingRowIndex = rowIndex;
SetColumnsReadOnly(false); // 设置其他列为可编辑
// 更改编辑按钮文本为"保存"
dgvPlcConfigs.Rows[rowIndex].Cells["Edit"].Value = "保存";
// 禁用其他行的按钮
foreach (DataGridViewRow row in dgvPlcConfigs.Rows)
{
if (row.Index != rowIndex)
{
if (row.Cells["Edit"] is DataGridViewButtonCell editCell)
editCell.Value = "";
if (row.Cells["CommConfig"] is DataGridViewButtonCell configCell)
configCell.Value = "";
if (row.Cells["Delete"] is DataGridViewButtonCell deleteCell)
deleteCell.Value = "";
}
}
// 禁用添加按钮
btAddPLC.Enabled = false;
}
else if (rowIndex == editingRowIndex)
{
// 保存更改
if (ValidateRow(rowIndex))
{
SaveChanges(rowIndex);
EndEditing();
}
}
}
private void EndEditing()
{
isEditing = false;
editingRowIndex = -1;
SetColumnsReadOnly(true);
// 恢复所有按钮文本和状态
foreach (DataGridViewRow row in dgvPlcConfigs.Rows)
{
row.Cells["Edit"].Value = "编辑";
row.Cells["CommConfig"].Value = "通信组";
row.Cells["Delete"].Value = "删除";
}
// 启用添加按钮
btAddPLC.Enabled = true;
}
private void HandleCommConfig(PLCConfig config)
{
using (var commForm = new CommunicationEditForm(config.PlcNum))
{
if (commForm.ShowDialog() == DialogResult.OK)
{
// 如果需要刷新主窗体数据
RefreshDataGridView();
}
}
}
private void HandleVariableConfig(PLCConfig config)
{
using (var commForm = new VariableEditForm(config.PlcNum))
{
if (commForm.ShowDialog() == DialogResult.OK)
{
// 如果需要刷新主窗体数据
RefreshDataGridView();
}
}
}
private void HandleDelete(int rowIndex, PLCConfig config)
{
if (MessageBox.Show($"确定要删除 PLC {config.PlcNum} 吗?", "确认删除",
MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
plcConfigs.RemoveAt(rowIndex);
SavePLCConfig();
RefreshDataGridView();
}
}
private bool ValidateRow(int rowIndex)
{
var row = dgvPlcConfigs.Rows[rowIndex];
// IP地址验证
string ipAddress = row.Cells["IPAddress"].Value?.ToString();
if (!IsValidIPAddress(ipAddress))
{
MessageBox.Show("请输入有效的IP地址", "验证错误",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
// 端口验证
string port = row.Cells["Port"].Value?.ToString();
if (!IsValidPort(port))
{
MessageBox.Show("端口号必须在0-65535之间", "验证错误",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
// PLC类型验证
string plcType = row.Cells["PLCType"].Value?.ToString();
if (string.IsNullOrWhiteSpace(plcType))
{
MessageBox.Show("请选择PLC类型", "验证错误",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
return true;
}
private void SaveChanges(int rowIndex)
{
try
{
var row = dgvPlcConfigs.Rows[rowIndex];
var config = plcConfigs[rowIndex];
// 更新配置对象
config.PLCType = row.Cells["PLCType"].Value?.ToString() ?? "";
config.IPAddress = row.Cells["IPAddress"].Value?.ToString() ?? "";
config.Port = row.Cells["Port"].Value?.ToString() ?? "";
config.HeartBeat = row.Cells["HeartBeat"].Value?.ToString() ?? "";
config.IsHeartBeat = row.Cells["IsHeartBeat"].Value != null &&
Convert.ToBoolean(row.Cells["IsHeartBeat"].Value);
config.IsActive = row.Cells["IsActive"].Value != null &&
Convert.ToBoolean(row.Cells["IsActive"].Value);
config.Remark = row.Cells["Remark"].Value?.ToString() ?? "";
// 保存更改
SavePLCConfig();
MessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
// 这里只显示错误信息,不再抛出异常
MessageBox.Show($"保存失败:{ex.Message}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void DgvPlcConfigs_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
if (e.RowIndex < 0 || !isEditing || e.RowIndex != editingRowIndex) return;
string newValue = e.FormattedValue.ToString();
var column = dgvPlcConfigs.Columns[e.ColumnIndex];
switch (column.Name)
{
case "IPAddress":
if (!IsValidIPAddress(newValue))
{
e.Cancel = true;
dgvPlcConfigs.Rows[e.RowIndex].ErrorText = "请输入有效的IP地址";
}
break;
case "Port":
if (!IsValidPort(newValue))
{
e.Cancel = true;
dgvPlcConfigs.Rows[e.RowIndex].ErrorText = "请输入有效的端口号(0-65535)";
}
break;
}
}
private void DgvPlcConfigs_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0) return;
dgvPlcConfigs.Rows[e.RowIndex].ErrorText = string.Empty;
}
private void DgvPlcConfigs_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
e.ThrowException = false;
string columnName = dgvPlcConfigs.Columns[e.ColumnIndex].HeaderText;
MessageBox.Show($"'{columnName}'列的输入数据格式不正确", "数据错误",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
/// <summary>
/// 验证IP地址
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
private bool IsValidIPAddress(string ip)
{
if (string.IsNullOrWhiteSpace(ip))
return false;
try
{
// 分割IP地址
string[] parts = ip.Split('.');
if (parts.Length != 4)
return false;
// 验证每个部分
foreach (string part in parts)
{
if (!int.TryParse(part, out int number))
return false;
if (number < 0 || number > 255)
return false;
}
return true;
}
catch
{
return false;
}
}
private bool IsValidPort(string port)
{
if (string.IsNullOrWhiteSpace(port))
return false;
return int.TryParse(port, out int portNum) && portNum >= 0 && portNum <= 65535;
}
private void SavePLCConfig()
{
try
{
// 创建备份
if (File.Exists(PlcConfigFilePath))
{
string backupFile = $"{PlcConfigFilePath}.bak";
File.Copy(PlcConfigFilePath, backupFile, true);
}
// 直接保存到目标文件
MiniExcel.SaveAs(PlcConfigFilePath, plcConfigs, overwriteFile: true);
}
catch (IOException ex)
{
MessageBox.Show($"保存文件时发生IO错误:{ex.Message}\n请确保文件未被其他程序占用。",
"保存错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
throw;
}
catch (UnauthorizedAccessException ex)
{
MessageBox.Show($"没有足够的权限保存文件:{ex.Message}\n请确保有写入权限。",
"权限错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
throw;
}
catch (Exception ex)
{
MessageBox.Show($"保存配置时发生错误:{ex.Message}",
"保存错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
throw;
}
}
private void RefreshDataGridView()
{
dgvPlcConfigs.DataSource = null;
dgvPlcConfigs.DataSource = new BindingList<PLCConfig>(plcConfigs);
}
protected override void OnFormClosing(FormClosingEventArgs e)
{
base.OnFormClosing(e);
if (isEditing)
{
var result = MessageBox.Show("当前有未保存的更改,是否保存?", "保存确认",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
switch (result)
{
case DialogResult.Yes:
if (ValidateRow(editingRowIndex))
{
SaveChanges(editingRowIndex);
EndEditing();
}
else
{
e.Cancel = true;
}
break;
case DialogResult.Cancel:
e.Cancel = true;
break;
// DialogResult.No 直接关闭
}
}
}
/// <summary>
/// 添加PLC
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btAddPLC_Click(object sender, EventArgs e)
{
if (isEditing)
{
MessageBox.Show("请先完成当前编辑操作", "提示",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
var maxPlcNum = plcConfigs.Count > 0 ? plcConfigs.Max(p => p.PlcNum) : 0;
var newConfig = new PLCConfig
{
PlcNum = maxPlcNum + 1,
PLCType = "",
IPAddress = "",
Port = "",
HeartBeat = "",
IsHeartBeat = false,
IsActive = false,
Remark = ""
};
plcConfigs.Add(newConfig);
RefreshDataGridView();
// 自动开始编辑新行
int newRowIndex = dgvPlcConfigs.Rows.Count - 1;
HandleEdit(newRowIndex);
}
private void BtnSaveAll_Click(object sender, EventArgs e)
{
try
{
SavePLCConfig();
MessageBox.Show("所有配置已保存", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show($"保存失败:{ex.Message}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
#region 系统相关配置
private void tog_AutoLogin_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveAutoLogin(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改软件自动登录方式".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
private void tog_AutoStart_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveAutoStart(((Toggle)sender).IsChecked))
{
//写入注册表
AutoStart(((Toggle)sender).IsChecked);
CommonMethods.AddOPLog(false, "修改软件自动启动方式".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
private void tog_AutoLock_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveAutoLock(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改无操作自动锁屏方式".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
private void up_LockPeriod_ValueChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveLockPeriod(Convert.ToInt32(((UpDownLabel)sender).CurrentValue)))
{
CommonMethods.AddOPLog(false, "修改锁屏间隔时间".Translated() + ":" + ((UpDownLabel)sender).CurrentValue.ToString());
CommonMethods.GetSysConfig();
}
}
private void tog_AutoQieHuanM_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveAutoQieHuanM(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改无操作自动切换监控界面方式".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
private void tog_IsDebugMod_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveIsDebug(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改调试模式".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
private void up_QieHuanPeriod_ValueChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveQieHuanMPeriod(Convert.ToInt32(((UpDownLabel)sender).CurrentValue)))
{
CommonMethods.AddOPLog(false, "修改切换监控界面间隔时间".Translated() + ":" + ((UpDownLabel)sender).CurrentValue.ToString());
CommonMethods.GetSysConfig();
}
}
private void up_ShowSeriesCount_ValueChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveShowSeriesCount(Convert.ToInt32(((UpDownLabel)sender).CurrentValue)))
{
CommonMethods.AddOPLog(false, "修改曲线显示数量".Translated() + ":" + ((UpDownLabel)sender).CurrentValue.ToString());
CommonMethods.GetSysConfig();
}
}
private void tog_SwipeCardMode_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveSwipeCardMode(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改刷卡模式".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
if (CommonMethods.sysConfig.SwipeCardMode && CommonMethods.IsLoginOk)
{
DialogResult dialogResult1 = new FrmMsgBoxWithAck("当前已登录".Translated() + "," + "是否切换刷卡模式".Translated(), "提示".Translated()).ShowDialog();
if (dialogResult1 == DialogResult.OK)
{
CommonMethods.AddOPLog(false, $"切换刷卡模式成功".Translated() + "," + "当前用户已注销".Translated());
CommonMethods.IsLoginOk = false;
CommonMethods.sysConfig.SwipeCardMode = true;
this.tog_SwipeCardMode.IsChecked = CommonMethods.sysConfig.SwipeCardMode;
CommonMethods.SaveSwipeCardMode(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
//切屏
CommonMethods.sysConfig.ScreenCutting = true;
}
else
{
CommonMethods.IsLoginOk = true;
CommonMethods.sysConfig.SwipeCardMode = false;
this.tog_SwipeCardMode.IsChecked = CommonMethods.sysConfig.SwipeCardMode;
CommonMethods.SaveSwipeCardMode(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
}
}
}
}
private void tog_OpenMesModel_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.plcDevices[0].IsConnected && CommonMethods.sysConfig.MesModeSwitching)
{
CommonMethods.sysConfig.MesModeSwitching = true;
this.tog_OpenMesModel.IsChecked = CommonMethods.sysConfig.MesModeSwitching;
CommonMethods.SaveOpenMesModel(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
new FrmMsgBoxOutWithAck(2, "先停止运行再切换MES".Translated(), "提示".Translated()).ShowDialog();
return;
}
if (CommonMethods.plcDevices[0].IsConnected && !CommonMethods.sysConfig.MesModeSwitching)
{
CommonMethods.sysConfig.MesModeSwitching = false;
this.tog_OpenMesModel.IsChecked = CommonMethods.sysConfig.MesModeSwitching;
CommonMethods.SaveOpenMesModel(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
new FrmMsgBoxOutWithAck(2, "先停止运行再切换MES".Translated(), "提示".Translated()).ShowDialog();
return;
}
if (CommonMethods.SaveOpenMesModel(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改MES/非MES模式切换".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
if (CommonMethods.sysConfig.MesModeSwitching)
{
FrmLoginMes frmLoginMes = new FrmLoginMes();
if (frmLoginMes.ShowDialog() != DialogResult.OK)
{
CommonMethods.sysConfig.MesModeSwitching = false;
this.tog_OpenMesModel.IsChecked = CommonMethods.sysConfig.MesModeSwitching;
CommonMethods.SaveOpenMesModel(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
}
}
else
{
DialogResult dialogResult = new FrmMsgBoxWithAck("是否关闭MES模式".Translated(), "提示".Translated()).ShowDialog();
if (dialogResult == DialogResult.OK)
{
CommonMethods.AddOPLog(false, "关闭MES模式成功".Translated() + "," + "MES用户已注销".Translated());
CommonMethods.sysConfig.MesModeSwitching = false;
this.tog_OpenMesModel.IsChecked = CommonMethods.sysConfig.MesModeSwitching;
CommonMethods.SaveOpenMesModel(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
}
else
{
CommonMethods.sysConfig.MesModeSwitching = true;
this.tog_OpenMesModel.IsChecked = CommonMethods.sysConfig.MesModeSwitching;
CommonMethods.SaveOpenMesModel(((Toggle)sender).IsChecked);
CommonMethods.GetSysConfig();
}
}
}
}
private void tog_GetMesParam_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveGetMesParam(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改获取MES参数".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
private void tog_SaveThreadTime_CheckedChanged(object sender, EventArgs e)
{
if (CommonMethods.SaveSaveThreadTime(((Toggle)sender).IsChecked))
{
CommonMethods.AddOPLog(false, "修改线程耗时日志保存".Translated() + ":" + ((Toggle)sender).IsChecked.ToString());
CommonMethods.GetSysConfig();
}
}
/// <summary>
/// 修改程序在注册表的 键值
/// </summary>
/// <param name="isAuto"></param>
private void AutoStart(bool isAuto = true)
{
if (isAuto == true)
{
RegistryKey R_local = Registry.CurrentUser;
RegistryKey R_run = R_local.CreateSubKey(@"SOFTWARE\Microsoft\windows\CurrentVersion\Run");
R_run.SetValue("KYJPro", System.Windows.Forms.Application.ExecutablePath);
R_run.Close();
R_local.Close();
}
else
{
RegistryKey R_local = Registry.CurrentUser;
RegistryKey R_run = R_local.CreateSubKey(@"SOFTWARE\Microsoft\windows\CurrentVersion\Run");
R_run.DeleteSubKey("KYJPro", false);
R_run.Close();
R_local.Close();
}
}
#endregion
private void btn_Sure_Click(object sender, EventArgs e)
{
CommonMethods.Configxml["MES_CONFIG"]["SiteCode"] = this.txtFactory_code.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["LineCode"] = this.txtline_No.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["EquipNum"] = this.txtEqp_code.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["EmployeeAuthCheck"] = this.txtEmployeeAuthCheck.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["MaterialInputInfo"] = this.txtMaterialInputInfo.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["DeviceParamRequest"] = this.txtDeviceParamRequest.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["DeviceParamChange"] = this.txtDeviceParamChange.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["ProductInStation"] = this.txtProductInStation.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["ProductProcessParams"] = this.txtProductProcessParams.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["ProductResultParams"] = this.txtProductResultParams.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["ProductOutStation"] = this.txtProductOutStation.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["DeviceAlarm"] = this.txtDeviceAlarm.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["DeviceStatus"] = this.txtDeviceStatus.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["EnergyConsumption"] = this.txtEnergyConsumption.Text.Trim();
CommonMethods.Configxml["MES_CONFIG"]["Anemometer"] = this.txtAnemometer.Text.Trim();
CommonMethods.WriteXmlFile(CommonMethods.Configxml, CommonMethods.xmlFilePath);
CommonMethods.mesConfig = CommonMethods.GetMesConfig();
DialogResult dialogResult = new FrmMsgBoxOutWithAck(1, "参数修改成功", "参数设置").ShowDialog();
}
/// <summary>
/// 取消
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Cancel_Click(object sender, EventArgs e)
{
this.txtFactory_code.Text = CommonMethods.mesConfig.siteCode;
this.txtline_No.Text = CommonMethods.mesConfig.lineCode;
this.txtEqp_code.Text = CommonMethods.mesConfig.equipNum;
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}
#endregion
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+444
View File
@@ -0,0 +1,444 @@
namespace LargeSquareOne
{
partial class FrmRecipe
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.dgvProdModel = new System.Windows.Forms.DataGridView();
this.ModelName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.MaterialCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
this.dgvPara = new System.Windows.Forms.DataGridView();
this.CGName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.ParaValueMin = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.ParaValueMax = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Uint = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dataGridViewTextBoxColumn48 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.txtMaterialCode = new System.Windows.Forms.TextBox();
this.btnDelProductModel = new System.Windows.Forms.Button();
this.label4 = new System.Windows.Forms.Label();
this.txtProductModel = new System.Windows.Forms.TextBox();
this.lb_Model = new System.Windows.Forms.Label();
this.btn_Save = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.btn_Add = new System.Windows.Forms.Button();
this.label2 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
this.splitContainer1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvProdModel)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
this.splitContainer2.Panel1.SuspendLayout();
this.splitContainer2.Panel2.SuspendLayout();
this.splitContainer2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvPara)).BeginInit();
this.SuspendLayout();
//
// splitContainer1
//
this.splitContainer1.BackColor = System.Drawing.Color.Transparent;
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
this.splitContainer1.IsSplitterFixed = true;
this.splitContainer1.Location = new System.Drawing.Point(0, 0);
this.splitContainer1.Name = "splitContainer1";
//
// splitContainer1.Panel1
//
this.splitContainer1.Panel1.Controls.Add(this.dgvProdModel);
//
// splitContainer1.Panel2
//
this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
this.splitContainer1.Size = new System.Drawing.Size(1874, 818);
this.splitContainer1.SplitterDistance = 334;
this.splitContainer1.SplitterWidth = 1;
this.splitContainer1.TabIndex = 0;
//
// dgvProdModel
//
this.dgvProdModel.AllowUserToAddRows = false;
this.dgvProdModel.AllowUserToDeleteRows = false;
this.dgvProdModel.AllowUserToResizeRows = false;
this.dgvProdModel.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.dgvProdModel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.dgvProdModel.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvProdModel.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgvProdModel.ColumnHeadersHeight = 40;
this.dgvProdModel.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgvProdModel.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.ModelName,
this.MaterialCode,
this.Column1});
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvProdModel.DefaultCellStyle = dataGridViewCellStyle2;
this.dgvProdModel.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvProdModel.EnableHeadersVisualStyles = false;
this.dgvProdModel.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgvProdModel.Location = new System.Drawing.Point(0, 0);
this.dgvProdModel.Name = "dgvProdModel";
this.dgvProdModel.ReadOnly = true;
this.dgvProdModel.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvProdModel.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dgvProdModel.RowHeadersWidth = 55;
this.dgvProdModel.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
this.dgvProdModel.RowTemplate.Height = 40;
this.dgvProdModel.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgvProdModel.Size = new System.Drawing.Size(334, 818);
this.dgvProdModel.TabIndex = 27;
this.dgvProdModel.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProdModel_CellClick);
this.dgvProdModel.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgvProdModel_RowPostPaint);
//
// ModelName
//
this.ModelName.DataPropertyName = "ModelName";
this.ModelName.FillWeight = 136.0544F;
this.ModelName.HeaderText = "生产型号";
this.ModelName.Name = "ModelName";
this.ModelName.ReadOnly = true;
this.ModelName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// MaterialCode
//
this.MaterialCode.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.MaterialCode.DataPropertyName = "MaterialCode";
this.MaterialCode.FillWeight = 63.94557F;
this.MaterialCode.HeaderText = "物料编码";
this.MaterialCode.Name = "MaterialCode";
this.MaterialCode.ReadOnly = true;
//
// Column1
//
this.Column1.DataPropertyName = "Remark";
this.Column1.HeaderText = "备注";
this.Column1.Name = "Column1";
this.Column1.ReadOnly = true;
this.Column1.Visible = false;
//
// splitContainer2
//
this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
this.splitContainer2.IsSplitterFixed = true;
this.splitContainer2.Location = new System.Drawing.Point(0, 0);
this.splitContainer2.Name = "splitContainer2";
//
// splitContainer2.Panel1
//
this.splitContainer2.Panel1.Controls.Add(this.dgvPara);
//
// splitContainer2.Panel2
//
this.splitContainer2.Panel2.Controls.Add(this.txtMaterialCode);
this.splitContainer2.Panel2.Controls.Add(this.btnDelProductModel);
this.splitContainer2.Panel2.Controls.Add(this.label4);
this.splitContainer2.Panel2.Controls.Add(this.txtProductModel);
this.splitContainer2.Panel2.Controls.Add(this.lb_Model);
this.splitContainer2.Panel2.Controls.Add(this.btn_Save);
this.splitContainer2.Panel2.Controls.Add(this.label1);
this.splitContainer2.Panel2.Controls.Add(this.btn_Add);
this.splitContainer2.Panel2.Controls.Add(this.label2);
this.splitContainer2.Size = new System.Drawing.Size(1539, 818);
this.splitContainer2.SplitterDistance = 1258;
this.splitContainer2.SplitterWidth = 1;
this.splitContainer2.TabIndex = 0;
//
// dgvPara
//
this.dgvPara.AllowUserToAddRows = false;
this.dgvPara.AllowUserToDeleteRows = false;
this.dgvPara.AllowUserToResizeRows = false;
this.dgvPara.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.dgvPara.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.dgvPara.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle4.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle4.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(11)))), ((int)(((byte)(20)))), ((int)(((byte)(36)))));
dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvPara.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
this.dgvPara.ColumnHeadersHeight = 40;
this.dgvPara.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgvPara.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.CGName,
this.ParaValueMin,
this.ParaValueMax,
this.Uint,
this.dataGridViewTextBoxColumn48});
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle5.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle5.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvPara.DefaultCellStyle = dataGridViewCellStyle5;
this.dgvPara.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvPara.EnableHeadersVisualStyles = false;
this.dgvPara.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgvPara.Location = new System.Drawing.Point(0, 0);
this.dgvPara.Name = "dgvPara";
this.dgvPara.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle6.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle6.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvPara.RowHeadersDefaultCellStyle = dataGridViewCellStyle6;
this.dgvPara.RowHeadersWidth = 55;
this.dgvPara.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
this.dgvPara.RowTemplate.Height = 40;
this.dgvPara.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.False;
this.dgvPara.Size = new System.Drawing.Size(1258, 818);
this.dgvPara.TabIndex = 26;
this.dgvPara.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgvPara_RowPostPaint);
//
// CGName
//
this.CGName.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.CGName.DataPropertyName = "Remark";
this.CGName.HeaderText = "参数项名称";
this.CGName.Name = "CGName";
this.CGName.ReadOnly = true;
//
// ParaValueMin
//
this.ParaValueMin.DataPropertyName = "ParaValueMin";
this.ParaValueMin.HeaderText = "最小值";
this.ParaValueMin.Name = "ParaValueMin";
this.ParaValueMin.Width = 120;
//
// ParaValueMax
//
this.ParaValueMax.DataPropertyName = "ParaValueMax";
this.ParaValueMax.HeaderText = "最大值";
this.ParaValueMax.Name = "ParaValueMax";
this.ParaValueMax.Width = 120;
//
// Uint
//
this.Uint.DataPropertyName = "Uint";
this.Uint.HeaderText = "单位";
this.Uint.Name = "Uint";
this.Uint.ReadOnly = true;
//
// dataGridViewTextBoxColumn48
//
this.dataGridViewTextBoxColumn48.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.dataGridViewTextBoxColumn48.HeaderText = "备注";
this.dataGridViewTextBoxColumn48.Name = "dataGridViewTextBoxColumn48";
this.dataGridViewTextBoxColumn48.ReadOnly = true;
this.dataGridViewTextBoxColumn48.Visible = false;
//
// txtMaterialCode
//
this.txtMaterialCode.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.txtMaterialCode.Location = new System.Drawing.Point(24, 151);
this.txtMaterialCode.Name = "txtMaterialCode";
this.txtMaterialCode.Size = new System.Drawing.Size(132, 24);
this.txtMaterialCode.TabIndex = 26;
//
// btnDelProductModel
//
this.btnDelProductModel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btnDelProductModel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnDelProductModel.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.btnDelProductModel.ForeColor = System.Drawing.Color.White;
this.btnDelProductModel.Location = new System.Drawing.Point(146, 396);
this.btnDelProductModel.Name = "btnDelProductModel";
this.btnDelProductModel.Size = new System.Drawing.Size(101, 36);
this.btnDelProductModel.TabIndex = 23;
this.btnDelProductModel.Text = "删除型号";
this.btnDelProductModel.UseVisualStyleBackColor = false;
this.btnDelProductModel.Click += new System.EventHandler(this.btnDelProductModel_Click);
//
// label4
//
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.label4.ForeColor = System.Drawing.Color.White;
this.label4.Location = new System.Drawing.Point(19, 126);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(82, 16);
this.label4.TabIndex = 25;
this.label4.Text = "物料编码:";
//
// txtProductModel
//
this.txtProductModel.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.txtProductModel.Location = new System.Drawing.Point(23, 79);
this.txtProductModel.Name = "txtProductModel";
this.txtProductModel.Size = new System.Drawing.Size(132, 24);
this.txtProductModel.TabIndex = 20;
//
// lb_Model
//
this.lb_Model.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.lb_Model.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.lb_Model.ForeColor = System.Drawing.Color.White;
this.lb_Model.Location = new System.Drawing.Point(24, 340);
this.lb_Model.Name = "lb_Model";
this.lb_Model.Size = new System.Drawing.Size(223, 30);
this.lb_Model.TabIndex = 19;
this.lb_Model.Text = "THPR";
this.lb_Model.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// btn_Save
//
this.btn_Save.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Save.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Save.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.btn_Save.ForeColor = System.Drawing.Color.White;
this.btn_Save.Location = new System.Drawing.Point(26, 396);
this.btn_Save.Name = "btn_Save";
this.btn_Save.Size = new System.Drawing.Size(101, 36);
this.btn_Save.TabIndex = 22;
this.btn_Save.Text = "保存参数";
this.btn_Save.UseVisualStyleBackColor = false;
this.btn_Save.Click += new System.EventHandler(this.btn_Save_Click);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.Location = new System.Drawing.Point(29, 314);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(67, 16);
this.label1.TabIndex = 17;
this.label1.Text = "当前型号";
//
// btn_Add
//
this.btn_Add.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Add.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Add.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.btn_Add.ForeColor = System.Drawing.Color.White;
this.btn_Add.Location = new System.Drawing.Point(21, 193);
this.btn_Add.Name = "btn_Add";
this.btn_Add.Size = new System.Drawing.Size(226, 36);
this.btn_Add.TabIndex = 21;
this.btn_Add.Text = "添加型号";
this.btn_Add.UseVisualStyleBackColor = false;
this.btn_Add.Click += new System.EventHandler(this.btn_Add_Click);
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold);
this.label2.ForeColor = System.Drawing.Color.White;
this.label2.Location = new System.Drawing.Point(19, 56);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(82, 16);
this.label2.TabIndex = 18;
this.label2.Text = "生产型号:";
//
// FrmRecipe
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.ClientSize = new System.Drawing.Size(1874, 818);
this.Controls.Add(this.splitContainer1);
this.Font = new System.Drawing.Font("微软雅黑", 10.5F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmRecipe";
this.Text = "参数设置";
this.Load += new System.EventHandler(this.FrmRecipe_Load);
this.splitContainer1.Panel1.ResumeLayout(false);
this.splitContainer1.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
this.splitContainer1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvProdModel)).EndInit();
this.splitContainer2.Panel1.ResumeLayout(false);
this.splitContainer2.Panel2.ResumeLayout(false);
this.splitContainer2.Panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
this.splitContainer2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvPara)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.SplitContainer splitContainer1;
private System.Windows.Forms.TextBox txtProductModel;
private System.Windows.Forms.Label lb_Model;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button btnDelProductModel;
private System.Windows.Forms.Button btn_Save;
private System.Windows.Forms.Button btn_Add;
private System.Windows.Forms.TextBox txtMaterialCode;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.SplitContainer splitContainer2;
private System.Windows.Forms.DataGridView dgvProdModel;
private System.Windows.Forms.DataGridView dgvPara;
private System.Windows.Forms.DataGridViewTextBoxColumn CGName;
private System.Windows.Forms.DataGridViewTextBoxColumn ParaValueMin;
private System.Windows.Forms.DataGridViewTextBoxColumn ParaValueMax;
private System.Windows.Forms.DataGridViewTextBoxColumn Uint;
private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn48;
private System.Windows.Forms.DataGridViewTextBoxColumn ModelName;
private System.Windows.Forms.DataGridViewTextBoxColumn MaterialCode;
private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
}
}
+266
View File
@@ -0,0 +1,266 @@
using JinYuan.Helper;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmRecipe : MultiLanguageForm
{
public FrmRecipe()
{
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);
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams parss = base.CreateParams;
parss.ExStyle |= 0x02000000;
return parss;
}
}
#endregion
Dictionary<string, object> disOldValue = new System.Collections.Generic.Dictionary<string, object>();
/// <summary>
/// 定义DataGridView数据源
/// </summary>
private BindingList<ParamList> blPLCConfigBaseList = new BindingList<ParamList>();
private void FrmRecipe_Load(object sender, EventArgs e)
{
this.dgvPara.AutoGenerateColumns = false;
this.dgvPara.DataSource = blPLCConfigBaseList;
GetProdModel();
GetProductParam(0);
}
private void GetProdModel()
{
try
{
var productList = CommonMethods.db.QuerySqlList<ProductModel>(CommonMethods.dBSQL.GetProdTypeSql());
dgvProdModel.DataSource = productList;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
#region 选择产品型号
/// <summary>
/// 点击单元格
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgvProdModel_CellClick(object sender, DataGridViewCellEventArgs e)
{
int row = dgvProdModel.CurrentCell.RowIndex;
GetProductParam(row);
}
public void GetProductParam(int row)
{
try
{
if (dgvProdModel.Rows.Count > 0)
{
string strModelType = dgvProdModel.Rows[row].Cells["ModelName"].Value.ToString();
lb_Model.Text = strModelType;
var list = CommonMethods.db.QuerySqlList<ParamList>(CommonMethods.dBSQL.GetProductParaByProdModel(strModelType));
disOldValue.Clear();
for (int i = 0; i < list.Count; i++)
{
if (!disOldValue.ContainsKey(list[i].Remark))
{
disOldValue.Add(list[i].Remark, $"{list[i].ParaValueMin},{list[i].ParaValueMax}");
}
}
dgvPara.DataSource = list;
}
}
catch (Exception ex)
{
MessageBox.Show("加载数据失败" + ex.Message);
}
}
#endregion
/// <summary>
/// 添加数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Add_Click(object sender, EventArgs e)
{
var productModel = new ProductModel();
productModel.ModelName = txtProductModel.Text;
productModel.MaterialCode = txtMaterialCode.Text;
productModel.Remark = txtProductModel.Text;
if (string.IsNullOrEmpty(productModel.ModelName))
{
new FrmMsgBoxOutWithAck(2, "产品型号不能为空!", "添加型号").Show();
return;
}
if (string.IsNullOrEmpty(productModel.MaterialCode))
{
new FrmMsgBoxOutWithAck(2, "型号对应的物料编码不能为空!", "添加型号").Show();
return;
}
try
{
bool b = CommonMethods.db.AddReturnBool<ProductModel>(productModel);
if (b)
{
GetProdModel();
CommonMethods.ChangeParamData();
new FrmMsgBoxOutWithAck(1, "添加成功!", "添加型号").Show();
}
else
{
new FrmMsgBoxOutWithAck(3, "添加失败!", "添加型号").Show();
}
}
catch (Exception ex)
{
if (ex.Message.Contains("重复键"))
{
LogHelper.Instance.WriteEX(ex);
new FrmMsgBoxOutWithAck(3, "添加失败:已存在改型号,重复新增!", "添加型号").Show();
}
else
{
LogHelper.Instance.WriteEX(ex);
new FrmMsgBoxOutWithAck(3, $"添加失败:{ex.Message}", "添加型号").Show();
}
}
//同步刷新主界面的类型选项
//sendParamIN();
}
private void btn_Save_Click(object sender, EventArgs e)
{
if (dgvProdModel.Rows.Count > 0 && dgvProdModel.CurrentCell.RowIndex > -1)
{
int row = dgvProdModel.CurrentCell.RowIndex;
string strModelType = dgvProdModel.Rows[row].Cells["ModelName"].Value.ToString();
if (string.IsNullOrEmpty(strModelType) || dgvPara.Rows.Count <= 0)
{
new FrmMsgBoxOutWithAck(2, "产品型号和参数列表不能为空!", "保存参数").Show();
return;
}
try
{
List<ParamList> list = (List<ParamList>)dgvPara.DataSource;
int f = CommonMethods.db.Delete<ParamList>(t => t.ModelName == strModelType);
if (f >= 0)
{
bool b = CommonMethods.db.AddReturnBool<ParamList>(list);
if (b)
{
GetProdModel();
CommonMethods.ChangeParamData();
new FrmMsgBoxOutWithAck(1, "保存成功!", "保存参数").Show();
}
else
{
new FrmMsgBoxOutWithAck(3, "保存失败!", "保存参数").Show();
}
}
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3, "保存失败", "保存参数").Show();
}
}
else
{
new FrmMsgBoxOutWithAck(1, "请选择产品型号", "保存参数").Show();
}
}
private void btnDelProductModel_Click(object sender, EventArgs e)
{
if (dgvProdModel.Rows.Count > 0 && dgvProdModel.CurrentCell.RowIndex > -1)
{
int row = dgvProdModel.CurrentCell.RowIndex;
string strModelType = dgvProdModel.Rows[row].Cells["ModelName"].Value.ToString();
if (string.IsNullOrEmpty(strModelType))
{
new FrmMsgBoxOutWithAck(2, "选择要删除的生产型号", "删除型号").Show();
return;
}
DialogResult dialogResult = new FrmMsgBoxWithAck($"是否要删除型号【{strModelType}】", "删除型号").ShowDialog();
if (dialogResult == DialogResult.OK)
{
try
{
int f = CommonMethods.db.Delete<ProductModel>(t => t.ModelName == strModelType);
if (f > 0)
{
GetProdModel();
CommonMethods.ChangeParamData();
}
new FrmMsgBoxOutWithAck(1, "删除成功!", "删除型号").Show();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(1, $"删除失败:{ex.Message}", "删除型号").Show();
}
}
}
}
private void dgvProdModel_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//显示序列号
DataGridViewHelper.DgvRowPostPaint(this.dgvProdModel, e);
}
private void dgvPara_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//显示序列号
DataGridViewHelper.DgvRowPostPaint(this.dgvPara, e);
}
}
}
+144
View File
@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="ModelName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="MaterialCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="CGName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="ParaValueMin.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="ParaValueMax.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Uint.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn48.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+671
View File
@@ -0,0 +1,671 @@
namespace LargeSquareOne
{
partial class FrmUserManage
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmUserManage));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
this.panelEnhanced1 = new JinYuan.ControlLib.PanelEnhanced();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.txtICCard = new System.Windows.Forms.TextBox();
this.lblICCard = new System.Windows.Forms.Label();
this.cmbUserLevel = new JinYuan.ControlLib.FlatComboBox();
this.lblUserIssion = new System.Windows.Forms.Label();
this.chk_SystemLog = new JinYuan.ControlLib.CheckBoxExt();
this.longTitleStyle21 = new JinYuan.ControlLib.LongTitleStyle2();
this.btn_Clear = new System.Windows.Forms.Button();
this.longTitleStyle22 = new JinYuan.ControlLib.LongTitleStyle2();
this.btn_Delete = new System.Windows.Forms.Button();
this.btn_SelectAll = new System.Windows.Forms.Button();
this.btn_Modify = new System.Windows.Forms.Button();
this.txt_LoginName = new System.Windows.Forms.TextBox();
this.btn_Add = new System.Windows.Forms.Button();
this.lblUserInfo = new System.Windows.Forms.Label();
this.longTitleStyle23 = new JinYuan.ControlLib.LongTitleStyle2();
this.txt_LoginPwd = new System.Windows.Forms.TextBox();
this.chk_CPK = new JinYuan.ControlLib.CheckBoxExt();
this.lblUserPwd = new System.Windows.Forms.Label();
this.chk_HistorySelect = new JinYuan.ControlLib.CheckBoxExt();
this.txt_LoginPwd2 = new System.Windows.Forms.TextBox();
this.chk_UserManage = new JinYuan.ControlLib.CheckBoxExt();
this.lblPwd = new System.Windows.Forms.Label();
this.chk_Paramset = new JinYuan.ControlLib.CheckBoxExt();
this.chk_SystemSet = new JinYuan.ControlLib.CheckBoxExt();
this.dgv_Main = new System.Windows.Forms.DataGridView();
this.LoginName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.LoginPwd = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.LoginUid = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.LoginLevel = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.SystemLog = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.CpkData = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.HistoryData = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.ParamSet = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.SystemSet = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.UserManage = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.panelEnhanced1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
this.splitContainer1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgv_Main)).BeginInit();
this.SuspendLayout();
//
// panelEnhanced1
//
this.panelEnhanced1.BackgroundImage = global::LargeSquareOne.Properties.Resources.BackGround;
this.panelEnhanced1.Controls.Add(this.splitContainer1);
this.panelEnhanced1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelEnhanced1.Location = new System.Drawing.Point(0, 0);
this.panelEnhanced1.Name = "panelEnhanced1";
this.panelEnhanced1.Size = new System.Drawing.Size(1874, 818);
this.panelEnhanced1.TabIndex = 0;
//
// splitContainer1
//
this.splitContainer1.BackColor = System.Drawing.Color.Transparent;
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer1.Location = new System.Drawing.Point(0, 0);
this.splitContainer1.Name = "splitContainer1";
//
// splitContainer1.Panel1
//
this.splitContainer1.Panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.splitContainer1.Panel1.Controls.Add(this.txtICCard);
this.splitContainer1.Panel1.Controls.Add(this.lblICCard);
this.splitContainer1.Panel1.Controls.Add(this.cmbUserLevel);
this.splitContainer1.Panel1.Controls.Add(this.lblUserIssion);
this.splitContainer1.Panel1.Controls.Add(this.chk_SystemLog);
this.splitContainer1.Panel1.Controls.Add(this.longTitleStyle21);
this.splitContainer1.Panel1.Controls.Add(this.btn_Clear);
this.splitContainer1.Panel1.Controls.Add(this.longTitleStyle22);
this.splitContainer1.Panel1.Controls.Add(this.btn_Delete);
this.splitContainer1.Panel1.Controls.Add(this.btn_SelectAll);
this.splitContainer1.Panel1.Controls.Add(this.btn_Modify);
this.splitContainer1.Panel1.Controls.Add(this.txt_LoginName);
this.splitContainer1.Panel1.Controls.Add(this.btn_Add);
this.splitContainer1.Panel1.Controls.Add(this.lblUserInfo);
this.splitContainer1.Panel1.Controls.Add(this.longTitleStyle23);
this.splitContainer1.Panel1.Controls.Add(this.txt_LoginPwd);
this.splitContainer1.Panel1.Controls.Add(this.chk_CPK);
this.splitContainer1.Panel1.Controls.Add(this.lblUserPwd);
this.splitContainer1.Panel1.Controls.Add(this.chk_HistorySelect);
this.splitContainer1.Panel1.Controls.Add(this.txt_LoginPwd2);
this.splitContainer1.Panel1.Controls.Add(this.chk_UserManage);
this.splitContainer1.Panel1.Controls.Add(this.lblPwd);
this.splitContainer1.Panel1.Controls.Add(this.chk_Paramset);
this.splitContainer1.Panel1.Controls.Add(this.chk_SystemSet);
//
// splitContainer1.Panel2
//
this.splitContainer1.Panel2.Controls.Add(this.dgv_Main);
this.splitContainer1.Size = new System.Drawing.Size(1874, 818);
this.splitContainer1.SplitterDistance = 407;
this.splitContainer1.TabIndex = 49;
//
// txtICCard
//
this.txtICCard.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.txtICCard.Font = new System.Drawing.Font("微软雅黑", 15F);
this.txtICCard.ForeColor = System.Drawing.Color.White;
this.txtICCard.ImeMode = System.Windows.Forms.ImeMode.Off;
this.txtICCard.Location = new System.Drawing.Point(146, 168);
this.txtICCard.Name = "txtICCard";
this.txtICCard.ShortcutsEnabled = false;
this.txtICCard.Size = new System.Drawing.Size(230, 34);
this.txtICCard.TabIndex = 52;
this.txtICCard.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtICCard_KeyDown);
this.txtICCard.KeyUp += new System.Windows.Forms.KeyEventHandler(this.txtICCard_KeyUp);
//
// lblICCard
//
this.lblICCard.AutoSize = true;
this.lblICCard.BackColor = System.Drawing.Color.Transparent;
this.lblICCard.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblICCard.ForeColor = System.Drawing.Color.White;
this.lblICCard.Location = new System.Drawing.Point(10, 180);
this.lblICCard.Name = "lblICCard";
this.lblICCard.Size = new System.Drawing.Size(65, 16);
this.lblICCard.TabIndex = 51;
this.lblICCard.Text = "IC卡号:";
//
// cmbUserLevel
//
this.cmbUserLevel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.cmbUserLevel.BorderColor = System.Drawing.Color.White;
this.cmbUserLevel.ButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.cmbUserLevel.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbUserLevel.Font = new System.Drawing.Font("微软雅黑", 15F);
this.cmbUserLevel.ForeColor = System.Drawing.Color.White;
this.cmbUserLevel.FormattingEnabled = true;
this.cmbUserLevel.Items.AddRange(new object[] {
"操作员",
"工程师",
"管理员"});
this.cmbUserLevel.Location = new System.Drawing.Point(146, 127);
this.cmbUserLevel.Name = "cmbUserLevel";
this.cmbUserLevel.Size = new System.Drawing.Size(230, 35);
this.cmbUserLevel.TabIndex = 12;
this.cmbUserLevel.SelectedIndexChanged += new System.EventHandler(this.cmbUserLevel_SelectedIndexChanged);
//
// lblUserIssion
//
this.lblUserIssion.AutoSize = true;
this.lblUserIssion.BackColor = System.Drawing.Color.Transparent;
this.lblUserIssion.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblUserIssion.ForeColor = System.Drawing.Color.White;
this.lblUserIssion.Location = new System.Drawing.Point(10, 139);
this.lblUserIssion.Name = "lblUserIssion";
this.lblUserIssion.Size = new System.Drawing.Size(82, 16);
this.lblUserIssion.TabIndex = 50;
this.lblUserIssion.Text = "用户权限:";
//
// chk_SystemLog
//
this.chk_SystemLog.BackColor = System.Drawing.Color.Transparent;
this.chk_SystemLog.CheckBackColor = System.Drawing.Color.White;
this.chk_SystemLog.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_SystemLog.DefultCheckButtonWidth = 20;
this.chk_SystemLog.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.chk_SystemLog.ForeColor = System.Drawing.Color.White;
this.chk_SystemLog.Location = new System.Drawing.Point(13, 390);
this.chk_SystemLog.Name = "chk_SystemLog";
this.chk_SystemLog.Size = new System.Drawing.Size(147, 27);
this.chk_SystemLog.TabIndex = 49;
this.chk_SystemLog.Text = "日志报警";
this.chk_SystemLog.UseVisualStyleBackColor = false;
//
// longTitleStyle21
//
this.longTitleStyle21.BackColor = System.Drawing.Color.Transparent;
this.longTitleStyle21.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("longTitleStyle21.BackgroundImage")));
this.longTitleStyle21.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.longTitleStyle21.Font = new System.Drawing.Font("Cambria", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.longTitleStyle21.Location = new System.Drawing.Point(23, 27);
this.longTitleStyle21.Margin = new System.Windows.Forms.Padding(6, 6, 6, 6);
this.longTitleStyle21.Name = "longTitleStyle21";
this.longTitleStyle21.Size = new System.Drawing.Size(366, 40);
this.longTitleStyle21.TabIndex = 0;
this.longTitleStyle21.TitleName = "用户信息";
//
// btn_Clear
//
this.btn_Clear.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.btn_Clear.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Clear.Font = new System.Drawing.Font("Cambria", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Clear.ForeColor = System.Drawing.Color.White;
this.btn_Clear.Location = new System.Drawing.Point(238, 738);
this.btn_Clear.Name = "btn_Clear";
this.btn_Clear.Size = new System.Drawing.Size(151, 51);
this.btn_Clear.TabIndex = 48;
this.btn_Clear.Text = "清空信息";
this.btn_Clear.UseVisualStyleBackColor = false;
this.btn_Clear.Click += new System.EventHandler(this.btn_Clear_Click);
//
// longTitleStyle22
//
this.longTitleStyle22.BackColor = System.Drawing.Color.Transparent;
this.longTitleStyle22.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("longTitleStyle22.BackgroundImage")));
this.longTitleStyle22.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.longTitleStyle22.Font = new System.Drawing.Font("Cambria", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.longTitleStyle22.Location = new System.Drawing.Point(13, 338);
this.longTitleStyle22.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.longTitleStyle22.Name = "longTitleStyle22";
this.longTitleStyle22.Size = new System.Drawing.Size(374, 40);
this.longTitleStyle22.TabIndex = 1;
this.longTitleStyle22.TitleName = "权限配置";
//
// btn_Delete
//
this.btn_Delete.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.btn_Delete.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Delete.Font = new System.Drawing.Font("Cambria", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Delete.ForeColor = System.Drawing.Color.White;
this.btn_Delete.Location = new System.Drawing.Point(22, 737);
this.btn_Delete.Name = "btn_Delete";
this.btn_Delete.Size = new System.Drawing.Size(151, 51);
this.btn_Delete.TabIndex = 47;
this.btn_Delete.Text = "删除用户";
this.btn_Delete.UseVisualStyleBackColor = false;
this.btn_Delete.Click += new System.EventHandler(this.btn_Delete_Click);
//
// btn_SelectAll
//
this.btn_SelectAll.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.btn_SelectAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_SelectAll.Font = new System.Drawing.Font("Cambria", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_SelectAll.ForeColor = System.Drawing.Color.White;
this.btn_SelectAll.Location = new System.Drawing.Point(183, 508);
this.btn_SelectAll.Name = "btn_SelectAll";
this.btn_SelectAll.Size = new System.Drawing.Size(193, 36);
this.btn_SelectAll.TabIndex = 34;
this.btn_SelectAll.Text = "全选/不选";
this.btn_SelectAll.UseVisualStyleBackColor = false;
this.btn_SelectAll.Click += new System.EventHandler(this.btn_SelectAll_Click);
//
// btn_Modify
//
this.btn_Modify.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.btn_Modify.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Modify.Font = new System.Drawing.Font("Cambria", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Modify.ForeColor = System.Drawing.Color.White;
this.btn_Modify.Location = new System.Drawing.Point(238, 658);
this.btn_Modify.Name = "btn_Modify";
this.btn_Modify.Size = new System.Drawing.Size(151, 51);
this.btn_Modify.TabIndex = 46;
this.btn_Modify.Text = "修改用户";
this.btn_Modify.UseVisualStyleBackColor = false;
this.btn_Modify.Click += new System.EventHandler(this.btn_Modify_Click);
//
// txt_LoginName
//
this.txt_LoginName.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.txt_LoginName.Font = new System.Drawing.Font("微软雅黑", 15F);
this.txt_LoginName.ForeColor = System.Drawing.Color.White;
this.txt_LoginName.Location = new System.Drawing.Point(146, 87);
this.txt_LoginName.Name = "txt_LoginName";
this.txt_LoginName.Size = new System.Drawing.Size(230, 34);
this.txt_LoginName.TabIndex = 33;
//
// btn_Add
//
this.btn_Add.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.btn_Add.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Add.Font = new System.Drawing.Font("Cambria", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Add.ForeColor = System.Drawing.Color.White;
this.btn_Add.Location = new System.Drawing.Point(22, 657);
this.btn_Add.Name = "btn_Add";
this.btn_Add.Size = new System.Drawing.Size(151, 51);
this.btn_Add.TabIndex = 45;
this.btn_Add.Text = "添加用户";
this.btn_Add.UseVisualStyleBackColor = false;
this.btn_Add.Click += new System.EventHandler(this.btn_Add_Click);
//
// lblUserInfo
//
this.lblUserInfo.AutoSize = true;
this.lblUserInfo.BackColor = System.Drawing.Color.Transparent;
this.lblUserInfo.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblUserInfo.ForeColor = System.Drawing.Color.White;
this.lblUserInfo.Location = new System.Drawing.Point(10, 98);
this.lblUserInfo.Name = "lblUserInfo";
this.lblUserInfo.Size = new System.Drawing.Size(82, 16);
this.lblUserInfo.TabIndex = 32;
this.lblUserInfo.Text = "用户信息:";
//
// longTitleStyle23
//
this.longTitleStyle23.BackColor = System.Drawing.Color.Transparent;
this.longTitleStyle23.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("longTitleStyle23.BackgroundImage")));
this.longTitleStyle23.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.longTitleStyle23.Font = new System.Drawing.Font("Cambria", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.longTitleStyle23.Location = new System.Drawing.Point(15, 593);
this.longTitleStyle23.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.longTitleStyle23.Name = "longTitleStyle23";
this.longTitleStyle23.Size = new System.Drawing.Size(374, 40);
this.longTitleStyle23.TabIndex = 44;
this.longTitleStyle23.TitleName = "用户操作";
//
// txt_LoginPwd
//
this.txt_LoginPwd.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.txt_LoginPwd.Font = new System.Drawing.Font("微软雅黑", 15F);
this.txt_LoginPwd.ForeColor = System.Drawing.Color.White;
this.txt_LoginPwd.Location = new System.Drawing.Point(146, 208);
this.txt_LoginPwd.Name = "txt_LoginPwd";
this.txt_LoginPwd.Size = new System.Drawing.Size(230, 34);
this.txt_LoginPwd.TabIndex = 36;
//
// chk_CPK
//
this.chk_CPK.BackColor = System.Drawing.Color.Transparent;
this.chk_CPK.CheckBackColor = System.Drawing.Color.White;
this.chk_CPK.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_CPK.DefultCheckButtonWidth = 20;
this.chk_CPK.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.chk_CPK.ForeColor = System.Drawing.Color.White;
this.chk_CPK.Location = new System.Drawing.Point(223, 390);
this.chk_CPK.Name = "chk_CPK";
this.chk_CPK.Size = new System.Drawing.Size(147, 27);
this.chk_CPK.TabIndex = 43;
this.chk_CPK.Text = "CPK计算";
this.chk_CPK.UseVisualStyleBackColor = false;
//
// lblUserPwd
//
this.lblUserPwd.AutoSize = true;
this.lblUserPwd.BackColor = System.Drawing.Color.Transparent;
this.lblUserPwd.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblUserPwd.ForeColor = System.Drawing.Color.White;
this.lblUserPwd.Location = new System.Drawing.Point(10, 221);
this.lblUserPwd.Name = "lblUserPwd";
this.lblUserPwd.Size = new System.Drawing.Size(82, 16);
this.lblUserPwd.TabIndex = 35;
this.lblUserPwd.Text = "用户密码:";
//
// chk_HistorySelect
//
this.chk_HistorySelect.BackColor = System.Drawing.Color.Transparent;
this.chk_HistorySelect.CheckBackColor = System.Drawing.Color.White;
this.chk_HistorySelect.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_HistorySelect.DefultCheckButtonWidth = 20;
this.chk_HistorySelect.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.chk_HistorySelect.ForeColor = System.Drawing.Color.White;
this.chk_HistorySelect.Location = new System.Drawing.Point(13, 423);
this.chk_HistorySelect.Name = "chk_HistorySelect";
this.chk_HistorySelect.Size = new System.Drawing.Size(147, 27);
this.chk_HistorySelect.TabIndex = 42;
this.chk_HistorySelect.Text = "数据追溯";
this.chk_HistorySelect.UseVisualStyleBackColor = false;
//
// txt_LoginPwd2
//
this.txt_LoginPwd2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.txt_LoginPwd2.Font = new System.Drawing.Font("微软雅黑", 15F);
this.txt_LoginPwd2.ForeColor = System.Drawing.Color.White;
this.txt_LoginPwd2.Location = new System.Drawing.Point(146, 248);
this.txt_LoginPwd2.Name = "txt_LoginPwd2";
this.txt_LoginPwd2.Size = new System.Drawing.Size(230, 34);
this.txt_LoginPwd2.TabIndex = 38;
//
// chk_UserManage
//
this.chk_UserManage.BackColor = System.Drawing.Color.Transparent;
this.chk_UserManage.CheckBackColor = System.Drawing.Color.White;
this.chk_UserManage.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_UserManage.DefultCheckButtonWidth = 20;
this.chk_UserManage.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.chk_UserManage.ForeColor = System.Drawing.Color.White;
this.chk_UserManage.Location = new System.Drawing.Point(224, 456);
this.chk_UserManage.Name = "chk_UserManage";
this.chk_UserManage.Size = new System.Drawing.Size(147, 27);
this.chk_UserManage.TabIndex = 41;
this.chk_UserManage.Text = "用户管理";
this.chk_UserManage.UseVisualStyleBackColor = false;
//
// lblPwd
//
this.lblPwd.AutoSize = true;
this.lblPwd.BackColor = System.Drawing.Color.Transparent;
this.lblPwd.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblPwd.ForeColor = System.Drawing.Color.White;
this.lblPwd.Location = new System.Drawing.Point(10, 262);
this.lblPwd.Name = "lblPwd";
this.lblPwd.Size = new System.Drawing.Size(82, 16);
this.lblPwd.TabIndex = 37;
this.lblPwd.Text = "确认密码:";
//
// chk_Paramset
//
this.chk_Paramset.BackColor = System.Drawing.Color.Transparent;
this.chk_Paramset.CheckBackColor = System.Drawing.Color.White;
this.chk_Paramset.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_Paramset.DefultCheckButtonWidth = 20;
this.chk_Paramset.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.chk_Paramset.ForeColor = System.Drawing.Color.White;
this.chk_Paramset.Location = new System.Drawing.Point(223, 423);
this.chk_Paramset.Name = "chk_Paramset";
this.chk_Paramset.Size = new System.Drawing.Size(147, 27);
this.chk_Paramset.TabIndex = 40;
this.chk_Paramset.Text = "参数设置";
this.chk_Paramset.UseVisualStyleBackColor = false;
//
// chk_SystemSet
//
this.chk_SystemSet.BackColor = System.Drawing.Color.Transparent;
this.chk_SystemSet.CheckBackColor = System.Drawing.Color.White;
this.chk_SystemSet.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_SystemSet.DefultCheckButtonWidth = 20;
this.chk_SystemSet.Font = new System.Drawing.Font("Cambria", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.chk_SystemSet.ForeColor = System.Drawing.Color.White;
this.chk_SystemSet.Location = new System.Drawing.Point(13, 455);
this.chk_SystemSet.Name = "chk_SystemSet";
this.chk_SystemSet.Size = new System.Drawing.Size(147, 27);
this.chk_SystemSet.TabIndex = 39;
this.chk_SystemSet.Text = "系统设置";
this.chk_SystemSet.UseVisualStyleBackColor = false;
//
// dgv_Main
//
this.dgv_Main.AllowUserToAddRows = false;
this.dgv_Main.AllowUserToDeleteRows = false;
this.dgv_Main.AllowUserToResizeColumns = false;
this.dgv_Main.AllowUserToResizeRows = false;
this.dgv_Main.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.dgv_Main.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.dgv_Main.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Main.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgv_Main.ColumnHeadersHeight = 45;
this.dgv_Main.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.LoginName,
this.LoginPwd,
this.LoginUid,
this.LoginLevel,
this.SystemLog,
this.CpkData,
this.HistoryData,
this.ParamSet,
this.SystemSet,
this.UserManage,
this.Column5});
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_Main.DefaultCellStyle = dataGridViewCellStyle2;
this.dgv_Main.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgv_Main.EnableHeadersVisualStyles = false;
this.dgv_Main.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgv_Main.Location = new System.Drawing.Point(0, 0);
this.dgv_Main.MultiSelect = false;
this.dgv_Main.Name = "dgv_Main";
this.dgv_Main.ReadOnly = true;
this.dgv_Main.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 10.5F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(30)))), ((int)(((byte)(20)))), ((int)(((byte)(80)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Main.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dgv_Main.RowHeadersWidth = 80;
this.dgv_Main.RowTemplate.Height = 40;
this.dgv_Main.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgv_Main.Size = new System.Drawing.Size(1463, 818);
this.dgv_Main.TabIndex = 10;
this.dgv_Main.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv_Main_CellContentClick);
this.dgv_Main.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.dgv_Main_CellFormatting);
this.dgv_Main.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgv_Main_RowPostPaint);
//
// LoginName
//
this.LoginName.DataPropertyName = "LoginName";
this.LoginName.HeaderText = "用户名";
this.LoginName.Name = "LoginName";
this.LoginName.ReadOnly = true;
this.LoginName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.LoginName.Width = 200;
//
// LoginPwd
//
this.LoginPwd.DataPropertyName = "LoginPwd";
this.LoginPwd.HeaderText = "用户密码";
this.LoginPwd.Name = "LoginPwd";
this.LoginPwd.ReadOnly = true;
this.LoginPwd.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.LoginPwd.Width = 200;
//
// LoginUid
//
this.LoginUid.DataPropertyName = "LoginUid";
this.LoginUid.HeaderText = "IC卡号";
this.LoginUid.Name = "LoginUid";
this.LoginUid.ReadOnly = true;
//
// LoginLevel
//
this.LoginLevel.DataPropertyName = "LoginLevel";
this.LoginLevel.HeaderText = "用户权限";
this.LoginLevel.Name = "LoginLevel";
this.LoginLevel.ReadOnly = true;
this.LoginLevel.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// SystemLog
//
this.SystemLog.DataPropertyName = "SystemLog";
this.SystemLog.HeaderText = "日志报警";
this.SystemLog.Name = "SystemLog";
this.SystemLog.ReadOnly = true;
this.SystemLog.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// CpkData
//
this.CpkData.DataPropertyName = "CpkData";
this.CpkData.HeaderText = "数据分析";
this.CpkData.Name = "CpkData";
this.CpkData.ReadOnly = true;
this.CpkData.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// HistoryData
//
this.HistoryData.DataPropertyName = "HistoryData";
this.HistoryData.HeaderText = "数据追溯";
this.HistoryData.Name = "HistoryData";
this.HistoryData.ReadOnly = true;
this.HistoryData.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// ParamSet
//
this.ParamSet.DataPropertyName = "ParamSet";
this.ParamSet.HeaderText = "参数设置";
this.ParamSet.Name = "ParamSet";
this.ParamSet.ReadOnly = true;
this.ParamSet.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// SystemSet
//
this.SystemSet.DataPropertyName = "SystemSet";
this.SystemSet.HeaderText = "系统设置";
this.SystemSet.Name = "SystemSet";
this.SystemSet.ReadOnly = true;
this.SystemSet.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// UserManage
//
this.UserManage.DataPropertyName = "UserManage";
this.UserManage.HeaderText = "用户管理";
this.UserManage.Name = "UserManage";
this.UserManage.ReadOnly = true;
this.UserManage.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// Column5
//
this.Column5.DataPropertyName = "LoginId";
this.Column5.HeaderText = "LoginId";
this.Column5.Name = "Column5";
this.Column5.ReadOnly = true;
this.Column5.Visible = false;
//
// FrmUserManage
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1874, 818);
this.Controls.Add(this.panelEnhanced1);
this.Font = new System.Drawing.Font("微软雅黑", 10.5F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(5);
this.Name = "FrmUserManage";
this.Text = "用户管理";
this.Load += new System.EventHandler(this.FrmUserManage_Load);
this.panelEnhanced1.ResumeLayout(false);
this.splitContainer1.Panel1.ResumeLayout(false);
this.splitContainer1.Panel1.PerformLayout();
this.splitContainer1.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
this.splitContainer1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgv_Main)).EndInit();
this.ResumeLayout(false);
}
#endregion
private JinYuan.ControlLib.PanelEnhanced panelEnhanced1;
private JinYuan.ControlLib.LongTitleStyle2 longTitleStyle22;
private JinYuan.ControlLib.LongTitleStyle2 longTitleStyle21;
private System.Windows.Forms.Label lblUserInfo;
private System.Windows.Forms.TextBox txt_LoginName;
private System.Windows.Forms.Button btn_SelectAll;
private JinYuan.ControlLib.CheckBoxExt chk_SystemSet;
private System.Windows.Forms.Label lblPwd;
private System.Windows.Forms.TextBox txt_LoginPwd2;
private System.Windows.Forms.Label lblUserPwd;
private System.Windows.Forms.TextBox txt_LoginPwd;
private JinYuan.ControlLib.CheckBoxExt chk_UserManage;
private JinYuan.ControlLib.CheckBoxExt chk_Paramset;
private JinYuan.ControlLib.CheckBoxExt chk_HistorySelect;
private System.Windows.Forms.Button btn_Clear;
private System.Windows.Forms.Button btn_Delete;
private System.Windows.Forms.Button btn_Modify;
private System.Windows.Forms.Button btn_Add;
private JinYuan.ControlLib.LongTitleStyle2 longTitleStyle23;
private JinYuan.ControlLib.CheckBoxExt chk_CPK;
private System.Windows.Forms.SplitContainer splitContainer1;
private System.Windows.Forms.DataGridView dgv_Main;
private JinYuan.ControlLib.CheckBoxExt chk_SystemLog;
private System.Windows.Forms.Label lblUserIssion;
private JinYuan.ControlLib.FlatComboBox cmbUserLevel;
private System.Windows.Forms.TextBox txtICCard;
private System.Windows.Forms.Label lblICCard;
private System.Windows.Forms.DataGridViewTextBoxColumn LoginName;
private System.Windows.Forms.DataGridViewTextBoxColumn LoginPwd;
private System.Windows.Forms.DataGridViewTextBoxColumn LoginUid;
private System.Windows.Forms.DataGridViewTextBoxColumn LoginLevel;
private System.Windows.Forms.DataGridViewTextBoxColumn SystemLog;
private System.Windows.Forms.DataGridViewTextBoxColumn CpkData;
private System.Windows.Forms.DataGridViewTextBoxColumn HistoryData;
private System.Windows.Forms.DataGridViewTextBoxColumn ParamSet;
private System.Windows.Forms.DataGridViewTextBoxColumn SystemSet;
private System.Windows.Forms.DataGridViewTextBoxColumn UserManage;
private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
}
}
+331
View File
@@ -0,0 +1,331 @@
using HML;
using JinYuan.Helper;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using Language;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmUserManage : MultiLanguageForm
{
public FrmUserManage()
{
InitializeComponent();
this.dgv_Main.AutoGenerateColumns = false;
UpdateSysAdminList();
if (sysAdmins.Count > 0)
{
UpdateSysAdminInfo(sysAdmins[0]);
}
}
/// <summary>
/// 当前用户中所有的用户集合
/// </summary>
private List<SysAdmin> sysAdmins = new List<SysAdmin>();
/// <summary>
/// 更新用户集合
/// </summary>
private void UpdateSysAdminList()
{
try
{
sysAdmins = CommonMethods.db.QueryDataTable(CommonMethods.dBSQL.GetSysAdminSql()).ToDataList<SysAdmin>();
sysAdmins.ForEach(c => c.LoginPwd = StringSecurityHelper.DESDecrypt(c.LoginPwd));
this.dgv_Main.DataSource = null;
this.dgv_Main.DataSource = sysAdmins;
}
catch (Exception ex)
{
new FrmMsgBoxWithAck("查询失败:" + ex.Message, "用户查询失败").ShowDialog();
}
}
private void UpdateSysAdminInfo(SysAdmin sysAdmin)
{
this.txt_LoginName.Text = sysAdmin.LoginName;
this.txtICCard.Text = sysAdmin.LoginUid;
this.txt_LoginPwd.Text = sysAdmin.LoginPwd;
this.txt_LoginPwd2.Text = sysAdmin.LoginPwd;
this.cmbUserLevel.Text= sysAdmin.LoginLevel;
this.chk_SystemLog.Checked = sysAdmin.SystemLog;
this.chk_CPK.Checked = sysAdmin.CpkData;
this.chk_HistorySelect.Checked = sysAdmin.HistoryData;
this.chk_SystemSet.Checked = sysAdmin.SystemSet;
this.chk_Paramset.Checked = sysAdmin.ParamSet;
this.chk_UserManage.Checked = sysAdmin.UserManage;
}
private void FrmUserManage_Load(object sender, EventArgs e)
{
}
private void cmbUserLevel_SelectedIndexChanged(object sender, EventArgs e)
{
CommonMethods.mesConfig.userLevel = cmbUserLevel.Text.ToString();
}
private void dgv_Main_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0)
{
int i = this.dgv_Main.SelectedRows[0].Index;
UpdateSysAdminInfo(sysAdmins[this.dgv_Main.SelectedRows[0].Index]);
}
}
private void dgv_Main_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
//显示序列号
DataGridViewHelper.DgvRowPostPaint(this.dgv_Main, e);
}
private void dgv_Main_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (e.RowIndex >= 0 && e.ColumnIndex > 2)
{
string value = this.dgv_Main.Rows[e.RowIndex].Cells[e.ColumnIndex].Value?.ToString();
if (value == "True")
{
e.Value = "启用";
}
else
{
e.Value = "禁用";
}
}
}
private void btn_Add_Click(object sender, EventArgs e)
{
//数据验证
if (this.txt_LoginName.Text.Length == 0)
{
new FrmMsgBoxWithAck("用户名不能为空", "添加用户").ShowDialog();
return;
}
if (this.txt_LoginPwd.Text.Length == 0)
{
new FrmMsgBoxWithAck("用户密码不能为空", "添加用户").ShowDialog();
return;
}
if (this.txt_LoginPwd2.Text.Length == 0)
{
new FrmMsgBoxWithAck("确认密码不能为空", "添加用户").ShowDialog();
return;
}
if (this.txt_LoginPwd.Text != this.txt_LoginPwd2.Text)
{
new FrmMsgBoxWithAck("两次输入密码不一致", "添加用户").ShowDialog();
return;
}
if (sysAdmins.Where(c => c.LoginName == this.txt_LoginName.Text.Trim()).ToList().Count > 0)
{
new FrmMsgBoxWithAck("该用户名已经存在", "添加用户").ShowDialog();
return;
}
//封装数据
SysAdmin sysAdmin = new SysAdmin()
{
LoginName = this.txt_LoginName.Text.Trim(),
LoginPwd = StringSecurityHelper.DESEncrypt(this.txt_LoginPwd.Text.Trim()),
LoginUid = this.txtICCard.Text.Trim(),
LoginLevel = CommonMethods.mesConfig.userLevel,
SystemLog = this.chk_SystemLog.Checked,
CpkData = this.chk_CPK.Checked,
HistoryData = this.chk_HistorySelect.Checked,
ParamSet = this.chk_Paramset.Checked,
SystemSet = this.chk_SystemSet.Checked,
UserManage = this.chk_UserManage.Checked
};
//调用方法
try
{
if (CommonMethods.db.AddReturnBool(sysAdmin))
{
UpdateSysAdminList();
}
else
{
new FrmMsgBoxWithAck("添加用户失败", "添加用户").ShowDialog();
}
}
catch (Exception ex)
{
new FrmMsgBoxWithAck("添加用户失败:" + ex.Message, "添加用户").ShowDialog();
}
}
private void btn_Modify_Click(object sender, EventArgs e)
{
//数据验证
if (this.txt_LoginName.Text.Length == 0)
{
new FrmMsgBoxWithAck("用户名不能为空", "修改用户").ShowDialog();
return;
}
if (this.txt_LoginPwd.Text.Length == 0)
{
new FrmMsgBoxWithAck("用户密码不能为空", "修改用户").ShowDialog();
return;
}
if (this.txt_LoginPwd2.Text.Length == 0)
{
new FrmMsgBoxWithAck("确认密码不能为空", "修改用户").ShowDialog();
return;
}
if (this.txt_LoginPwd.Text != this.txt_LoginPwd2.Text)
{
new FrmMsgBoxWithAck("两次输入密码不一致", "修改用户").ShowDialog();
return;
}
//如果修改用户名就需要进行判断用户名是否存在
//if (sysAdmins[this.dgv_Main.SelectedRows[0].Index].LoginName != this.txt_LoginName.Text)
//{
// if (sysAdmins.Where(c => c.LoginName == this.txt_LoginName.Text.Trim()).ToList().Count > 0)
// {
// new FrmMsgBoxWithAck("该用户名已经存在", "修改用户").ShowDialog();
// return;
// }
//}
//封装数据
SysAdmin sysAdmin = new SysAdmin()
{
LoginId = sysAdmins[this.dgv_Main.SelectedRows[0].Index].LoginId,
LoginName = this.txt_LoginName.Text.Trim(),
LoginPwd = StringSecurityHelper.DESEncrypt(this.txt_LoginPwd.Text.Trim()),
LoginUid=this.txtICCard.Text.Trim(),
LoginLevel = CommonMethods.mesConfig.userLevel,
SystemLog = this.chk_SystemLog.Checked,
CpkData = this.chk_CPK.Checked,
HistoryData = this.chk_HistorySelect.Checked,
SystemSet = this.chk_SystemSet.Checked,
ParamSet = this.chk_Paramset.Checked,
UserManage = this.chk_UserManage.Checked
};
//调用方法
try
{
if (CommonMethods.db.Update<SysAdmin>(sysAdmin, it => it.LoginId == sysAdmin.LoginId) == 1)
{
UpdateSysAdminList();
}
else
{
new FrmMsgBoxWithAck("修改用户失败", "修改用户").ShowDialog();
}
}
catch (Exception ex)
{
new FrmMsgBoxWithAck("修改用户失败:" + ex.Message, "修改用户").ShowDialog();
}
}
private void btn_Delete_Click(object sender, EventArgs e)
{
int loginId = sysAdmins[this.dgv_Main.SelectedRows[0].Index].LoginId;
string loginName = sysAdmins[this.dgv_Main.SelectedRows[0].Index].LoginName;
try
{
if (new FrmMsgBoxWithAck($"是否删除{loginName}用户!", "删除提示").ShowDialog() == DialogResult.OK)
{
if (CommonMethods.db.Delete<SysAdmin>(it => it.LoginId == loginId) == 1)
{
UpdateSysAdminList();
}
else
{
new FrmMsgBoxWithAck("删除用户失败", "修改用户").ShowDialog();
}
}
}
catch (Exception ex)
{
new FrmMsgBoxWithAck("删除用户失败:" + ex.Message, "修改用户").ShowDialog();
}
}
private void btn_Clear_Click(object sender, EventArgs e)
{
this.txt_LoginName.Clear();
this.txtICCard.Clear();
this.txt_LoginPwd.Clear();
this.txt_LoginPwd2.Clear();
SetChecked(false);
}
private void btn_SelectAll_Click(object sender, EventArgs e)
{
SetChecked(!this.chk_SystemSet.Checked);
}
private void SetChecked(bool value)
{
this.chk_SystemLog.Checked = value;
this.chk_CPK.Checked = value;
this.chk_HistorySelect.Checked = value;
this.chk_SystemSet.Checked = value;
this.chk_Paramset.Checked = value;
this.chk_UserManage.Checked = value;
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams parss = base.CreateParams;
parss.ExStyle |= 0x02000000;
return parss;
}
}
#endregion
private void txtICCard_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.V)
{
e.Handled = true;
}
}
DateTime dt1;
DateTime dt2;
private void txtICCard_KeyUp(object sender, KeyEventArgs e)
{
string Item= txtICCard.Text.Trim();
if (txtICCard.TextLength==1)
{
dt1 =System.DateTime.Now;
}
if (txtICCard.TextLength == 2)
{
dt2 = System.DateTime.Now;
TimeSpan _ts = dt2.Subtract(dt1);
if (_ts.Milliseconds > 50)
{
new FrmMsgBoxWithAck("禁止手动输入,请使用厂牌扫描录入", "IC卡号").ShowDialog();
txtICCard.Clear();
}
}
}
}
}
+565
View File
@@ -0,0 +1,565 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="longTitleStyle21.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAkcAAAApCAYAAAA/Io30AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKNWlDQ1BzUkdCIElFQzYxOTY2LTIuMQAA
SMedlndUVNcWh8+9d3qhzTDSGXqTLjCA9C4gHQRRGGYGGMoAwwxNbIioQEQREQFFkKCAAaOhSKyIYiEo
qGAPSBBQYjCKqKhkRtZKfHl57+Xl98e939pn73P32XuftS4AJE8fLi8FlgIgmSfgB3o401eFR9Cx/QAG
eIABpgAwWempvkHuwUAkLzcXerrICfyL3gwBSPy+ZejpT6eD/0/SrFS+AADIX8TmbE46S8T5Ik7KFKSK
7TMipsYkihlGiZkvSlDEcmKOW+Sln30W2VHM7GQeW8TinFPZyWwx94h4e4aQI2LER8QFGVxOpohvi1gz
SZjMFfFbcWwyh5kOAIoktgs4rHgRm4iYxA8OdBHxcgBwpLgvOOYLFnCyBOJDuaSkZvO5cfECui5Lj25q
bc2ge3IykzgCgaE/k5XI5LPpLinJqUxeNgCLZ/4sGXFt6aIiW5paW1oamhmZflGo/7r4NyXu7SK9Cvjc
M4jW94ftr/xS6gBgzIpqs+sPW8x+ADq2AiB3/w+b5iEAJEV9a7/xxXlo4nmJFwhSbYyNMzMzjbgclpG4
oL/rfzr8DX3xPSPxdr+Xh+7KiWUKkwR0cd1YKUkpQj49PZXJ4tAN/zzE/zjwr/NYGsiJ5fA5PFFEqGjK
uLw4Ubt5bK6Am8Kjc3n/qYn/MOxPWpxrkSj1nwA1yghI3aAC5Oc+gKIQARJ5UNz13/vmgw8F4psXpjqx
OPefBf37rnCJ+JHOjfsc5xIYTGcJ+RmLa+JrCdCAACQBFcgDFaABdIEhMANWwBY4AjewAviBYBAO1gIW
iAfJgA8yQS7YDApAEdgF9oJKUAPqQSNoASdABzgNLoDL4Dq4Ce6AB2AEjIPnYAa8AfMQBGEhMkSB5CFV
SAsygMwgBmQPuUE+UCAUDkVDcRAPEkK50BaoCCqFKqFaqBH6FjoFXYCuQgPQPWgUmoJ+hd7DCEyCqbAy
rA0bwwzYCfaGg+E1cBycBufA+fBOuAKug4/B7fAF+Dp8Bx6Bn8OzCECICA1RQwwRBuKC+CERSCzCRzYg
hUg5Uoe0IF1IL3ILGUGmkXcoDIqCoqMMUbYoT1QIioVKQ21AFaMqUUdR7age1C3UKGoG9QlNRiuhDdA2
aC/0KnQcOhNdgC5HN6Db0JfQd9Dj6DcYDIaG0cFYYTwx4ZgEzDpMMeYAphVzHjOAGcPMYrFYeawB1g7r
h2ViBdgC7H7sMew57CB2HPsWR8Sp4sxw7rgIHA+XhyvHNeHO4gZxE7h5vBReC2+D98Oz8dn4Enw9vgt/
Az+OnydIE3QIdoRgQgJhM6GC0EK4RHhIeEUkEtWJ1sQAIpe4iVhBPE68QhwlviPJkPRJLqRIkpC0k3SE
dJ50j/SKTCZrkx3JEWQBeSe5kXyR/Jj8VoIiYSThJcGW2ChRJdEuMSjxQhIvqSXpJLlWMkeyXPKk5A3J
aSm8lLaUixRTaoNUldQpqWGpWWmKtKm0n3SydLF0k/RV6UkZrIy2jJsMWyZf5rDMRZkxCkLRoLhQWJQt
lHrKJco4FUPVoXpRE6hF1G+o/dQZWRnZZbKhslmyVbJnZEdoCE2b5kVLopXQTtCGaO+XKC9xWsJZsmNJ
y5LBJXNyinKOchy5QrlWuTty7+Xp8m7yifK75TvkHymgFPQVAhQyFQ4qXFKYVqQq2iqyFAsVTyjeV4KV
9JUCldYpHVbqU5pVVlH2UE5V3q98UXlahabiqJKgUqZyVmVKlaJqr8pVLVM9p/qMLkt3oifRK+g99Bk1
JTVPNaFarVq/2ry6jnqIep56q/ojDYIGQyNWo0yjW2NGU1XTVzNXs1nzvhZei6EVr7VPq1drTltHO0x7
m3aH9qSOnI6XTo5Os85DXbKug26abp3ubT2MHkMvUe+A3k19WN9CP16/Sv+GAWxgacA1OGAwsBS91Hop
b2nd0mFDkqGTYYZhs+GoEc3IxyjPqMPohbGmcYTxbuNe408mFiZJJvUmD0xlTFeY5pl2mf5qpm/GMqsy
u21ONnc332jeaf5ymcEyzrKDy+5aUCx8LbZZdFt8tLSy5Fu2WE5ZaVpFW1VbDTOoDH9GMeOKNdra2Xqj
9WnrdzaWNgKbEza/2BraJto22U4u11nOWV6/fMxO3Y5pV2s3Yk+3j7Y/ZD/ioObAdKhzeOKo4ch2bHCc
cNJzSnA65vTC2cSZ79zmPOdi47Le5bwr4urhWuja7ybjFuJW6fbYXd09zr3ZfcbDwmOdx3lPtKe3527P
YS9lL5ZXo9fMCqsV61f0eJO8g7wrvZ/46Pvwfbp8Yd8Vvnt8H67UWslb2eEH/Lz89vg98tfxT/P/PgAT
4B9QFfA00DQwN7A3iBIUFdQU9CbYObgk+EGIbogwpDtUMjQytDF0Lsw1rDRsZJXxqvWrrocrhHPDOyOw
EaERDRGzq91W7109HmkRWRA5tEZnTdaaq2sV1iatPRMlGcWMOhmNjg6Lbor+wPRj1jFnY7xiqmNmWC6s
faznbEd2GXuKY8cp5UzE2sWWxk7G2cXtiZuKd4gvj5/munAruS8TPBNqEuYS/RKPJC4khSW1JuOSo5NP
8WR4ibyeFJWUrJSBVIPUgtSRNJu0vWkzfG9+QzqUvia9U0AV/Uz1CXWFW4WjGfYZVRlvM0MzT2ZJZ/Gy
+rL1s3dkT+S453y9DrWOta47Vy13c+7oeqf1tRugDTEbujdqbMzfOL7JY9PRzYTNiZt/yDPJK817vSVs
S1e+cv6m/LGtHlubCyQK+AXD22y31WxHbedu799hvmP/jk+F7MJrRSZF5UUfilnF174y/ariq4WdsTv7
SyxLDu7C7OLtGtrtsPtoqXRpTunYHt897WX0ssKy13uj9l4tX1Zes4+wT7hvpMKnonO/5v5d+z9Uxlfe
qXKuaq1Wqt5RPXeAfWDwoOPBlhrlmqKa94e4h+7WetS212nXlR/GHM44/LQ+tL73a8bXjQ0KDUUNH4/w
jowcDTza02jV2Nik1FTSDDcLm6eORR67+Y3rN50thi21rbTWouPguPD4s2+jvx064X2i+yTjZMt3Wt9V
t1HaCtuh9uz2mY74jpHO8M6BUytOdXfZdrV9b/T9kdNqp6vOyJ4pOUs4m3924VzOudnzqeenL8RdGOuO
6n5wcdXF2z0BPf2XvC9duex++WKvU++5K3ZXTl+1uXrqGuNax3XL6+19Fn1tP1j80NZv2d9+w+pG503r
m10DywfODjoMXrjleuvyba/b1++svDMwFDJ0dzhyeOQu++7kvaR7L+9n3J9/sOkh+mHhI6lH5Y+VHtf9
qPdj64jlyJlR19G+J0FPHoyxxp7/lP7Th/H8p+Sn5ROqE42TZpOnp9ynbj5b/Wz8eerz+emCn6V/rn6h
++K7Xxx/6ZtZNTP+kv9y4dfiV/Kvjrxe9rp71n/28ZvkN/NzhW/l3x59x3jX+z7s/cR85gfsh4qPeh+7
Pnl/eriQvLDwG/eE8/s6uL5TAAAACXBIWXMAAAsMAAALDAE/QCLIAAAUQElEQVR4Xu2dB7QmRZXH2TXn
UJJzztCAkkVQJJo44ooY19XFsAK6Ii4uu7qu7oq6IEUawgyMZEZGcnIERmCKyYHJOefYk2ew9vy+7973
7tR8783IwfcOu/d/zv9Vv/66vq6+3XXv/7tV3b3NNn8Bqlxb/k0nLLctabf92y6sWx6Sw+FwOBwOxytH
B+LkdYb8bwVLKU60jtZ7vWFZv7O6bP8GQ1u/VV0XRw6Hw+FwbCXK2NmCVgeU7EgDvJp1O2Nj2y6DaZiK
G4TJG6tcv0nIsoqVVgdpxQ3bvrnK9VuFLPMd1G8ldOw+td7bhSy/Rb7T7rs0anlIDofD4XA4CpSx03Br
NECrGG7rqg7Q+qV26Kiu3bdNrpQJkkbdLoNpoB4UIuVtVa7fYcj/rG9lIJZZjxHZ7l1Vrt8rfE+V63fK
ej4vRQ7LGBARxHahyvV2wm3lO1jP57rv0rjlITkcDofD4ShQxk4T/22SgnhN3CWWQzQAMdjGcFtXRZHG
curbJIcKLNUOZV3dN9uxf74DqubYRDd0GUwDaQQNwhCIGhUpENHy7hYiR43COgyBmNm+yvWuVa53k3In
EToYGUOpkdQg7JPP2A/b71Plel8p95D67J/vbyWwykNyOBwOh8NRoIUoKmO4xn7i7s5S8r+N/3a6DMvE
dGI7ggoNQLy3CQ4VV2yn9cp9U5/t2I+S/1VctcX98pj+ajCqkQbQGIQIBvluletDqlzvVeV6d1n3viKT
o9kmDgCj7ijbX1/l+oQq14dWuT5Q1lEfQ6nIUaXIPjEi+zi4ynW/KtdnVbk+tsr1UbJuTxFdiCjdd9cr
SYfD4XA4XqPoIFukCQpiLHF4vyrXB1W5PqnK9RMSv4ntxHib4CgTI2xDUoTtj6xyfY0ILNUNmgmy2SI7
asT++Q6SIxdJvTKp0uXiiIOkAag1FTg9qlxfVeX60yKSMBiGUxWpDdaDYz0i5rAq14OrXD9T5fpCEUmI
HEQShkMIIYg0fYdRd5HPj6tynatcL6tyfYWIpJOlPgZDYLHvTQRSeUwOh8PhcDg2RSGMdCoMwoQYvL+I
muOrXP9E4jDxuKpyvbdJUOhcYjvqgzY4QOL/BRL/0QHoBr5bEyM6D0n3jeDie9EG7OPjojvQH4wkoRdU
WKFTui7ei6FoLA1FqdFIVCONU15W5fqDksVhqAtj0GAEkh4gChHjkPHBKMreVa7PEeFDfb6fk4FA4js4
eFWap8nJUA6qcv31KtenV7k+WgTSDlJP03tdZyyHw+FwOF6jMMNZiBQVRsRkYjOi6Lwq1wOKOEzsJ0HC
dipydH4x8Zj4jSgifvcq4v8RIno0buuNWpoYIeHB5x+ocn1poTs0IaIZq24TR4gVRA8HygHZRsLfiOHI
8KDodB4Q9VRUYaBTCuPA/lWuL6lyfYyoUz1gHYpjHeIJEWVPClxR5frqKtcflXYhztg3xmpkj8pjcjgc
DofDsSnMSBFZH0ZhSGqQDGGEh9Ea4m0ZgxnBQbwgYtAIOlFb9cLhMkpEnC9jP9/L95M9It7rZG0dpeI7
GZ1CX5SaA0FGvEdfUI94323iCHWHWsMQZUOVqDvmEpEK04lTOqSm2Z/SQMqeVa5PlBQcB4zI0ZPD+Cbi
qzwxyheqXJ8tQop9097GBK/ymBwOh8PhcGwKyRrpSBGjNogTYvZzLWKu8lwROYwMIWjI+OhQHCNFt7SI
9cqPiHjSmK93wbFv4v4PWmgMJXpCh/OI990mjmg0B84YIRmesqGWV1a5PlWUIOKIxqMgmRt0ZgsDWT5d
5frzUgdjYWBSeswtYn15YiyXVrn+nmSedGjNxZHD4XA4HFuAGVLTZAg3Xuncoo54fpXrD4mYIZmBMELc
sF7nFnXEM0TkkDzR+coQ/aBzizoiU2nQI7SzW8WRGovG0KiyoZYcFAfXKnOEMUoDWWJMjIpxbeYI47O+
PDGWnEROphrLM0cOh8PhcGwFRByRVCC5QJKBZANJhzLWWpK0IHlBEoNkBkkNkhusJ9lRxnhLkiUkTUie
6GgTSRX0A0mWUltYkqRBj5C0ob3dKo5oPGksRE7ZUCVpMMSMPruIRmMs0makz0ijlQZSkn4jDYeBEUZ6
+x/pOtJ2pO/KE6Mk7Uf6j/axbx2DdHHkcDgcDscWUGSOiPdMU2G6CtNWypirZLoL015s5khjPtNkmC5T
xnolMbtV5oh9Mz2nnIRtyfQevQmrWzNHercaE6CYCFU2lAlTTJxCnCBoOECdtY4SRPDoxK7SQEzUYsIW
4gkFWU7q0tnqTPwqTwwTxJgophO7ODl6O3/Xzl53OBwOh+M1CjPniBuaEDnEe2504oYnbnxqNSFb7zZH
SOnzjiCZJ9aR4eGGq1YTsrlBixu1uGELfYHIQTewb27s4gYvxFerCdm0S/VCt4kjfc6RHjBqzTYSdaez
1fVhjogifR8a2SPUHZ9zQNY43NqHesRAHCjbIYp01jrfheEQZNwyaE8KtxRiOG4xtI8BoK4+bbPrjOVw
OBwOx2sUEu/1GUcat4n3TKXhkTk8OodH6Ng4rNkf4rc+dwixYh8DoHeb8+geG/8ZKWJkiKSG3q2mmgHR
gzijPrGfRwZZ3UEyREVVt92thjhC6Ohzh1B0NI65RTyUCdFDI0mF6QHqU64RKSpyyB4xRohRmFvEw6AQ
RRhHHyCpT7mmPvvUJ3OyDx42xclgbhEPoUIUcVJQpzoUp/tue8+aw+FwOByOziExU7NHeju/JkSYG8Tc
IkZwGK3RidoIHzI8+jBHTYwgkNALaAM+pz4jPIwS6URt4r8OqaEv9DUi+tBpfYAkuoEECaNTOlFbn8zN
dt32nCP7fhTECkqNx3djMBqHeEGY6MFhWH2/CssqrKiHQuSx4ao0MZze/mffj2b3aV89wuPKdXxTn8qt
T+a0+24IIxdHDofD4XBsGcU71VQgaYICEUMWB5FDxgeRxOu8WEcc1rdb2Nd/aWIEgUX8RiQxlwiRxGvE
VODogxypp68d07droBuozz7YHpHEjVes0wdGd/1Dn42h/uIXwEmpE7w4ULZr9eI5fTKmvh9F69lHmKuK
xCD2hXcYtcOXzro4cjgcDodjy9jCS2cRIsRdhrrsC+AZSbKjPpqgKJMqxHvq2xfPI7rKxIjGf923xn/2
z36UxH40Rfe8LqyFoTQTRIOgvkfFZousOFGRg5FUXGEInaytabRWwsYaSMWVTtRGUGn6brNskYsjh8Ph
cDi2HmXsNCNHNpNjExzQjhrpXN9SN6jIYTtEDd8BdX6xaoiyru5bXymCBlDa+N8YUuvSeG8aahtLQyyt
KCoFis0gqbjCgFAPSj/vqK4aSAUW1PqtBNkmdDgcDofD0TnK2FnEYWK1jgLZJAfLNkmhAqdVDCd2641a
Ws8mR8q6dt9bpQG6DC0a2hlLo5Z19eAt/5p1G3Q4HA6Hw9E5ytjZIhar0FGxouwsyWHr2vplcqWzumV9
pdUBjboOh8PhcDgcrxpaCJNWtGJkM3GyBb5adUu2bedwOBwOh8PhcDgcDofD4XA4HA6Hw+FwOBwOh8Ph
cDgcDofD4XA4HA6Hw+FwOBwOh8PhcDgcDofD4XA4HA6Hw+FwOBwOh8PhcDgcDofD4XA4HA6Hw+FwOBwO
h8PhcDgcDofD4XA4HA6Hw+FwOBwOx/9RhJicTqfT6XQ6ncLNVjidTqfT6XT+fyZ/Xi98Qyd8Ywu+SWiX
4ZtNqXyL8K0F32b4duE7Cr4zxPQuw3dL+Z4Q03sN3yfcVsjy9iGmHaTU5R1DTDsJdxHuKtw9xLSH4Z4h
pr1DTPuEmPY1PDDEdECI6WDhoSGmQ0JMh4WYKuGRIab3C482PC7EdHyI6cQQ00khpg8JTwkxfVh4aojp
tBDTmSGms0JMHwsxfVz4iRDTp4Xnhpj+LsR0XojpcyGmL4SYvhRi+kqI6ashpn8IMX0txPT1ENM/hpi+
LfxOiOnCENNFIabvhph+IPxhiOmyENOPhD8W/lT48xDTf4WYrggx/TLE9KsQ029CTFeHmGKI6doQ0/Uh
putCTDeFmG4OMfUKMfUMMd0mvDPEdFeI6d4QU58Q031S9g0x/T7E9ECI6WHhYyGmJ0NMT4WY/hBi+qPw
mRDTn0JMzwkHhJiS4YshpkEhpqEhpmHCESGml4SjQ0xjQkzjQkxjDSeEmCaFmCaHmKaEmKaFmGYIZwpn
hZhmh5jmCOeGmOYJFxguMlwcYloSYlpquEy4XLgixLQyxFRLqVwtXCVcY7jWcJ0p4fqCG4QbXwFfNiz/
13WW7Mduq+vs50ptm7azPAZ7jGoLljl+/d/aB2I3La091dZqe3seIOcIcs4WGs5vQc63Xgt6jUyXa2Sq
LHMtsUw5Ua4rXeZ64zocJWSZaxRyvQ4OMQ0RDpTrWq9zrv3+IaanpaQ/9DN95fEQ0xPSfx6UPvWQ9C/6
2e+Ed0tf1D5J/9T+qv23R4jpBiH9m75+lZD+/+sQ0y/EL/xniOlnUuI3/j3E9G/Gp+BfLhX+c4jpe+KD
/kn4LfFTFwjxX/gx/Nnfh5i+HGL6YojpfPF3+L3PiB/EH54TYvqk+MmzxXdClvGl+NSPin9Vf6v+94Mh
phOEx4qPPkZ8tvrxo0JMRwgPF3+P71f/TyzQ2LB/iGk/IfEDEksgcUVjzG5CjUEak3YWEq+IW0ri2HZF
nIPBUGMjJSRmatxUEldhGW+JwTYuQxuzNZZbaozXeG91gGWpIZSlzij1B1SdsiW+zpR22a7bKiKOykZ0
JIpaCSEriEoh1EoQtRJDpSDSk2ZFkZ5cPdl68vViKIWRFUNWEOkFx7JejHpxqjDiwt3LXNCIIb3Iuei5
+A8yHYKSTkJnQRTRcehEKoroYFBFkXZAhBEd9GQjiCCdl458hpQIIwTRp0yJM/isCCOcBM4CUaTCSEUR
VEeDKMIBIYrgxSGm74eYLhFnpQ7s8hDTv4pjw8H9hzg8nB+CCGGEU/wfI4oQQ0qc6I3iWHGyONtbQ0y3
h5juEId8jxFF9xsHTvmI8FFx7jh7qKLoWSEB4oUWwkgDinK4UAMQomi8EUYsE6w0eCGIEEYENUqCnBVH
KopUGKk4olRRhBiypQZdpQ3IiCKoQVxLDfRWAFhhpOKoFEWWnYmjVkKpI7FTiqGS5fZlXbtshRAs22pF
kxVLViDpshVIVhyVQgmbQrW1FaWlUFIRa0WSiqGy1PMOrXCm5LrRa0hFkVL/5xrkmtRSr0+uVa5ZK44Q
+yqSVCBpf2CZkj7Cjwio4kj7E32LHxwIJPujBCKM6Jf0z94ikui7t0g/pj/zowdxRH+/RsorRRxZgcQP
KPwF5AcVfgRagQQRR5AfZ/gjfrCpSPpmiOkb4rfwYQgjRJIKpM8L8YEIJPwgVIGkPx7xl/hPBBK+9HTx
ryqQIL4XPwwRSPhlfrjio/HX+G314VYk8eMXn68iSak/mDVOEDM0fhBLVCQRY6AKJeIPtGJJRZL+mFeh
RKkxTmOeFUpWLLUSSaVYKkWSjc2lWCoTHKVAsiLJiqWSpUAqWWqRkqUoarVua9ihcNpm/ct/znDdxo74
8mZcW3DNhs25esPLedX69hKuXL+xrazXbWyUK9ZtyuUFl67dkJetbZZL1rRzEVy9vo0LVjU5f9X6PG9l
ezl35boGZ9fr8hwpZ65ocsaKtQ1OX742TzOcvHRNg5OWrskTl6zJ45esbnDs4iZHL1rV4Etw4ao8auGq
PGLByjYOm78yD5lXN/jinBV54Nw6D5izIg+Y3eTzs5bn/jObfHbm8vz0jGW53/Qmn5q2tMHHpyzJj01Z
kh+dsiQ/OGlxfmjS4vzAxMX59xMX574TF+X7JyzKfcYvyveOW5jvGrsw3zFmQb5zzIL829ELcu/R8/Nt
L83PvUbNz7eOmp9vGTkv3zxyXu4xfG6+YfjcfP3wufnaoXNyHDInXz1kTr5y8Oz860Gz8i8Hzsq/eHFW
/u80M/9swMz88zQz//SFGQ3+5PkZ+cfPT8+XPzc9/6j/tHxZ/2n5h89Oy5c+OzVf8szU/P2np+aL/zgl
X9xvSr6o3+QGv/nkpPztpyblbzw5KX/t8YkNfvWxCfnLj07IX3l0Qv7Cw+MbPP/h8flzD43L5wk/++C4
/JkHxuZzHxibP9l3TP5U3zH5nL5jGstn9Rmdz+wzulGeft9L+bR7mzz1nlGN8sP3jGrw5LtH5ZPuGplP
unNkPuGOEfn4O0bk425v57HCo3oPz+/vPTwfeduwfMRtwxolrG4dlg+/dWg+rNfQfGivofmQnkPzwT3b
ywNvGZIP6jmkUe5/85C8H7xpcN7XcJ+bBue9b2znnj0GNbiH4e49BuVdbxjY4C7XD8y73dD8n2W4s+FO
17Vzx+tebMkdrm1Sl7c33O6aJu2y5bbXpDZ2tL4jbu132fZYarvt/+WxQbUDy5TWPpbYTu1qbWttv9eN
zfNR0p4zzmPj3Ao513relQfItaDXBuSa4fqx1xTX2dG/HZ4/IGT5mNub5FrkOj3xznZy/XIdn3L3qLbr
+yNSnnFfk2f3Gd3Gj/1udP7E/c2+ov2HvgTpX8ovPjI+f+mR8Zv0RZbpnxc8OSl/66lJjb57Yb/JjeXv
/GFyY5n+TT+nz0P6/7+IL7j8T9Mb/gGqz8B/QPzJFQNn5V8NnNXwM/ibqwbPbvgeeN2wuQ3im24a0fRT
+Kueo5rEl90+ekEb8Xf4uvvGLWz4QHwhxC/iI/GVD09ekh+Z3O5DKZ+Y2vSt+Fl8rhIfrP4Y3/yC+Gn8
dhL/PXheO/Hr+PiRC5rE/8NGPJDYMGbR6jxucTNuTJD4QSyBxJUpy9bkqcuapcYd4pDGJDirbsYrjV3E
MWKa5UKJfZTEQS0b8XHNhrxYaGOnxlSljbsah4nPSuK0pcZzJTFeWeqAUisoS03RZKk9mrQaRZe3lhte
ATf+uVn+L91+H9j2IH7hAAAAAElFTkSuQmCC
</value>
</data>
<data name="longTitleStyle22.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
ATf+uVn+L91+H9j2IH7hAAAAAElFTkSuQmCC
</value>
</data>
<data name="longTitleStyle23.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
ATf+uVn+L91+H9j2IH7hAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="LoginName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="LoginPwd.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="LoginUid.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="LoginLevel.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="SystemLog.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="CpkData.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="HistoryData.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="ParamSet.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="SystemSet.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="UserManage.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+643
View File
@@ -0,0 +1,643 @@
namespace LargeSquareOne
{
partial class FrmVariableConfig
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
this.panelExt1 = new JinYuan.ControlLib.PanelExt();
this.txt_Start = new System.Windows.Forms.TextBox();
this.label10 = new System.Windows.Forms.Label();
this.txt_VarAddress = new System.Windows.Forms.TextBox();
this.num_Offset = new System.Windows.Forms.NumericUpDown();
this.label9 = new System.Windows.Forms.Label();
this.num_Scale = new System.Windows.Forms.NumericUpDown();
this.label8 = new System.Windows.Forms.Label();
this.chk_NegAlarm = new JinYuan.ControlLib.CheckBoxExt();
this.chk_PosAlarm = new JinYuan.ControlLib.CheckBoxExt();
this.cmb_DataType = new System.Windows.Forms.ComboBox();
this.label7 = new System.Windows.Forms.Label();
this.dgv_Main = new System.Windows.Forms.DataGridView();
this.VarName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Start = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.OffsetOrLenght = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.DataType = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Scale = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Offset = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.PosAlarm = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.NegAlarm = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.GroupName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Remark = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.btn_Modify = new System.Windows.Forms.Button();
this.btn_Delete = new System.Windows.Forms.Button();
this.btn_Add = new System.Windows.Forms.Button();
this.txt_Remark = new System.Windows.Forms.TextBox();
this.label6 = new System.Windows.Forms.Label();
this.cmb_GroupName = new System.Windows.Forms.ComboBox();
this.label5 = new System.Windows.Forms.Label();
this.num_OffsetOrLenght = new System.Windows.Forms.NumericUpDown();
this.label4 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.txt_VarName = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.topPanel = new System.Windows.Forms.Panel();
this.btn_Close = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.panelExt1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.num_Offset)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.num_Scale)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dgv_Main)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.num_OffsetOrLenght)).BeginInit();
this.topPanel.SuspendLayout();
this.SuspendLayout();
//
// panelExt1
//
this.panelExt1.BackColor = System.Drawing.Color.Transparent;
this.panelExt1.BordeColor = System.Drawing.Color.FromArgb(((int)(((byte)(32)))), ((int)(((byte)(79)))), ((int)(((byte)(150)))));
this.panelExt1.BordeWidth = 2;
this.panelExt1.BottomGap = 0;
this.panelExt1.Controls.Add(this.txt_Start);
this.panelExt1.Controls.Add(this.label10);
this.panelExt1.Controls.Add(this.txt_VarAddress);
this.panelExt1.Controls.Add(this.num_Offset);
this.panelExt1.Controls.Add(this.label9);
this.panelExt1.Controls.Add(this.num_Scale);
this.panelExt1.Controls.Add(this.label8);
this.panelExt1.Controls.Add(this.chk_NegAlarm);
this.panelExt1.Controls.Add(this.chk_PosAlarm);
this.panelExt1.Controls.Add(this.cmb_DataType);
this.panelExt1.Controls.Add(this.label7);
this.panelExt1.Controls.Add(this.dgv_Main);
this.panelExt1.Controls.Add(this.btn_Modify);
this.panelExt1.Controls.Add(this.btn_Delete);
this.panelExt1.Controls.Add(this.btn_Add);
this.panelExt1.Controls.Add(this.txt_Remark);
this.panelExt1.Controls.Add(this.label6);
this.panelExt1.Controls.Add(this.cmb_GroupName);
this.panelExt1.Controls.Add(this.label5);
this.panelExt1.Controls.Add(this.num_OffsetOrLenght);
this.panelExt1.Controls.Add(this.label4);
this.panelExt1.Controls.Add(this.label3);
this.panelExt1.Controls.Add(this.txt_VarName);
this.panelExt1.Controls.Add(this.label2);
this.panelExt1.Controls.Add(this.topPanel);
this.panelExt1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panelExt1.LeftGap = 0;
this.panelExt1.Location = new System.Drawing.Point(0, 0);
this.panelExt1.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.panelExt1.Name = "panelExt1";
this.panelExt1.RightGap = 0;
this.panelExt1.Size = new System.Drawing.Size(1024, 636);
this.panelExt1.TabIndex = 0;
this.panelExt1.TopGap = 0;
//
// txt_Start
//
this.txt_Start.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txt_Start.Location = new System.Drawing.Point(721, 57);
this.txt_Start.Name = "txt_Start";
this.txt_Start.Size = new System.Drawing.Size(87, 29);
this.txt_Start.TabIndex = 27;
this.txt_Start.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// label10
//
this.label10.AutoSize = true;
this.label10.ForeColor = System.Drawing.Color.White;
this.label10.Location = new System.Drawing.Point(458, 60);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(74, 21);
this.label10.TabIndex = 26;
this.label10.Text = "变量地址";
//
// txt_VarAddress
//
this.txt_VarAddress.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txt_VarAddress.Location = new System.Drawing.Point(533, 57);
this.txt_VarAddress.Name = "txt_VarAddress";
this.txt_VarAddress.Size = new System.Drawing.Size(94, 29);
this.txt_VarAddress.TabIndex = 25;
this.txt_VarAddress.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// num_Offset
//
this.num_Offset.DecimalPlaces = 1;
this.num_Offset.Location = new System.Drawing.Point(903, 102);
this.num_Offset.Name = "num_Offset";
this.num_Offset.Size = new System.Drawing.Size(92, 29);
this.num_Offset.TabIndex = 23;
this.num_Offset.Value = new decimal(new int[] {
10,
0,
0,
65536});
//
// label9
//
this.label9.AutoSize = true;
this.label9.ForeColor = System.Drawing.Color.White;
this.label9.Location = new System.Drawing.Point(840, 107);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(58, 21);
this.label9.TabIndex = 22;
this.label9.Text = "偏移量";
//
// num_Scale
//
this.num_Scale.DecimalPlaces = 1;
this.num_Scale.Location = new System.Drawing.Point(722, 108);
this.num_Scale.Name = "num_Scale";
this.num_Scale.Size = new System.Drawing.Size(86, 29);
this.num_Scale.TabIndex = 21;
this.num_Scale.Value = new decimal(new int[] {
10,
0,
0,
65536});
//
// label8
//
this.label8.AutoSize = true;
this.label8.ForeColor = System.Drawing.Color.White;
this.label8.Location = new System.Drawing.Point(642, 113);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(74, 21);
this.label8.TabIndex = 20;
this.label8.Text = "线性系数";
//
// chk_NegAlarm
//
this.chk_NegAlarm.CheckBackColor = System.Drawing.Color.White;
this.chk_NegAlarm.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_NegAlarm.DefultCheckButtonWidth = 20;
this.chk_NegAlarm.ForeColor = System.Drawing.Color.White;
this.chk_NegAlarm.Location = new System.Drawing.Point(367, 110);
this.chk_NegAlarm.Name = "chk_NegAlarm";
this.chk_NegAlarm.Size = new System.Drawing.Size(120, 25);
this.chk_NegAlarm.TabIndex = 19;
this.chk_NegAlarm.Text = "下降沿报警";
this.chk_NegAlarm.UseVisualStyleBackColor = true;
//
// chk_PosAlarm
//
this.chk_PosAlarm.CheckBackColor = System.Drawing.Color.White;
this.chk_PosAlarm.CheckColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(25)))), ((int)(((byte)(66)))));
this.chk_PosAlarm.DefultCheckButtonWidth = 20;
this.chk_PosAlarm.ForeColor = System.Drawing.Color.White;
this.chk_PosAlarm.Location = new System.Drawing.Point(241, 110);
this.chk_PosAlarm.Name = "chk_PosAlarm";
this.chk_PosAlarm.Size = new System.Drawing.Size(120, 25);
this.chk_PosAlarm.TabIndex = 18;
this.chk_PosAlarm.Text = "上升沿报警";
this.chk_PosAlarm.UseVisualStyleBackColor = true;
//
// cmb_DataType
//
this.cmb_DataType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmb_DataType.FormattingEnabled = true;
this.cmb_DataType.Location = new System.Drawing.Point(105, 107);
this.cmb_DataType.Name = "cmb_DataType";
this.cmb_DataType.Size = new System.Drawing.Size(125, 29);
this.cmb_DataType.TabIndex = 17;
//
// label7
//
this.label7.AutoSize = true;
this.label7.ForeColor = System.Drawing.Color.White;
this.label7.Location = new System.Drawing.Point(8, 113);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(74, 21);
this.label7.TabIndex = 16;
this.label7.Text = "数据类型";
//
// dgv_Main
//
this.dgv_Main.AllowUserToAddRows = false;
this.dgv_Main.AllowUserToDeleteRows = false;
this.dgv_Main.AllowUserToResizeRows = false;
this.dgv_Main.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.dgv_Main.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.dgv_Main.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
dataGridViewCellStyle1.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Main.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgv_Main.ColumnHeadersHeight = 45;
this.dgv_Main.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dgv_Main.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.VarName,
this.Column1,
this.Start,
this.OffsetOrLenght,
this.DataType,
this.Scale,
this.Offset,
this.PosAlarm,
this.NegAlarm,
this.GroupName,
this.Remark});
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_Main.DefaultCellStyle = dataGridViewCellStyle2;
this.dgv_Main.EnableHeadersVisualStyles = false;
this.dgv_Main.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(21)))), ((int)(((byte)(77)))), ((int)(((byte)(147)))));
this.dgv_Main.Location = new System.Drawing.Point(3, 217);
this.dgv_Main.Name = "dgv_Main";
this.dgv_Main.ReadOnly = true;
this.dgv_Main.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 12F);
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(40)))), ((int)(((byte)(86)))));
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgv_Main.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.dgv_Main.RowHeadersWidth = 45;
this.dgv_Main.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
this.dgv_Main.RowTemplate.Height = 40;
this.dgv_Main.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.False;
this.dgv_Main.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgv_Main.Size = new System.Drawing.Size(1018, 416);
this.dgv_Main.TabIndex = 15;
this.dgv_Main.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv_Main_CellClick);
this.dgv_Main.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.dgv_Main_CellFormatting);
this.dgv_Main.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgv_Main_RowPostPaint);
//
// VarName
//
this.VarName.DataPropertyName = "VarName";
this.VarName.HeaderText = "变量名称";
this.VarName.Name = "VarName";
this.VarName.ReadOnly = true;
this.VarName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.VarName.Width = 130;
//
// Column1
//
this.Column1.DataPropertyName = "VarAddress";
this.Column1.HeaderText = "变量地址";
this.Column1.Name = "Column1";
this.Column1.ReadOnly = true;
//
// Start
//
this.Start.DataPropertyName = "Start";
this.Start.HeaderText = "起始索引";
this.Start.Name = "Start";
this.Start.ReadOnly = true;
this.Start.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.Start.Width = 80;
//
// OffsetOrLenght
//
this.OffsetOrLenght.DataPropertyName = "OffsetOrLenght";
this.OffsetOrLenght.HeaderText = "位偏移/长度";
this.OffsetOrLenght.Name = "OffsetOrLenght";
this.OffsetOrLenght.ReadOnly = true;
this.OffsetOrLenght.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.OffsetOrLenght.Width = 110;
//
// DataType
//
this.DataType.DataPropertyName = "DataType";
this.DataType.HeaderText = "数据类型";
this.DataType.Name = "DataType";
this.DataType.ReadOnly = true;
this.DataType.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.DataType.Width = 80;
//
// Scale
//
this.Scale.DataPropertyName = "Scale";
this.Scale.HeaderText = "线性系数";
this.Scale.Name = "Scale";
this.Scale.ReadOnly = true;
this.Scale.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.Scale.Width = 80;
//
// Offset
//
this.Offset.DataPropertyName = "Offset";
this.Offset.HeaderText = "偏移量";
this.Offset.Name = "Offset";
this.Offset.ReadOnly = true;
this.Offset.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.Offset.Width = 80;
//
// PosAlarm
//
this.PosAlarm.DataPropertyName = "PosAlarm";
this.PosAlarm.HeaderText = "上升沿";
this.PosAlarm.Name = "PosAlarm";
this.PosAlarm.ReadOnly = true;
this.PosAlarm.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.PosAlarm.Width = 80;
//
// NegAlarm
//
this.NegAlarm.DataPropertyName = "NegAlarm";
this.NegAlarm.HeaderText = "下降沿";
this.NegAlarm.Name = "NegAlarm";
this.NegAlarm.ReadOnly = true;
this.NegAlarm.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.NegAlarm.Width = 80;
//
// GroupName
//
this.GroupName.DataPropertyName = "GroupName";
this.GroupName.HeaderText = "通信组";
this.GroupName.Name = "GroupName";
this.GroupName.ReadOnly = true;
this.GroupName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// Remark
//
this.Remark.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.Remark.DataPropertyName = "Remark";
this.Remark.HeaderText = "备注说明";
this.Remark.Name = "Remark";
this.Remark.ReadOnly = true;
this.Remark.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// btn_Modify
//
this.btn_Modify.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Modify.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Modify.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Modify.ForeColor = System.Drawing.Color.White;
this.btn_Modify.Location = new System.Drawing.Point(829, 154);
this.btn_Modify.Name = "btn_Modify";
this.btn_Modify.Size = new System.Drawing.Size(86, 36);
this.btn_Modify.TabIndex = 14;
this.btn_Modify.Text = "修改变量";
this.btn_Modify.UseVisualStyleBackColor = false;
this.btn_Modify.Click += new System.EventHandler(this.btn_Modify_Click);
//
// btn_Delete
//
this.btn_Delete.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Delete.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Delete.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Delete.ForeColor = System.Drawing.Color.White;
this.btn_Delete.Location = new System.Drawing.Point(693, 154);
this.btn_Delete.Name = "btn_Delete";
this.btn_Delete.Size = new System.Drawing.Size(86, 36);
this.btn_Delete.TabIndex = 13;
this.btn_Delete.Text = "删除变量";
this.btn_Delete.UseVisualStyleBackColor = false;
this.btn_Delete.Click += new System.EventHandler(this.btn_Delete_Click);
//
// btn_Add
//
this.btn_Add.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(27)))), ((int)(((byte)(78)))));
this.btn_Add.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Add.Font = new System.Drawing.Font("微软雅黑", 11.5F);
this.btn_Add.ForeColor = System.Drawing.Color.White;
this.btn_Add.Location = new System.Drawing.Point(557, 154);
this.btn_Add.Name = "btn_Add";
this.btn_Add.Size = new System.Drawing.Size(86, 36);
this.btn_Add.TabIndex = 12;
this.btn_Add.Text = "新增变量";
this.btn_Add.UseVisualStyleBackColor = false;
this.btn_Add.Click += new System.EventHandler(this.btn_Add_Click);
//
// txt_Remark
//
this.txt_Remark.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txt_Remark.Location = new System.Drawing.Point(105, 158);
this.txt_Remark.Name = "txt_Remark";
this.txt_Remark.Size = new System.Drawing.Size(405, 29);
this.txt_Remark.TabIndex = 11;
this.txt_Remark.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// label6
//
this.label6.AutoSize = true;
this.label6.ForeColor = System.Drawing.Color.White;
this.label6.Location = new System.Drawing.Point(8, 163);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(74, 21);
this.label6.TabIndex = 10;
this.label6.Text = "备注说明";
//
// cmb_GroupName
//
this.cmb_GroupName.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmb_GroupName.FormattingEnabled = true;
this.cmb_GroupName.Location = new System.Drawing.Point(105, 55);
this.cmb_GroupName.Name = "cmb_GroupName";
this.cmb_GroupName.Size = new System.Drawing.Size(125, 29);
this.cmb_GroupName.TabIndex = 9;
//
// label5
//
this.label5.AutoSize = true;
this.label5.ForeColor = System.Drawing.Color.White;
this.label5.Location = new System.Drawing.Point(240, 59);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(74, 21);
this.label5.TabIndex = 8;
this.label5.Text = "变量名称";
//
// num_OffsetOrLenght
//
this.num_OffsetOrLenght.Location = new System.Drawing.Point(931, 55);
this.num_OffsetOrLenght.Maximum = new decimal(new int[] {
1000,
0,
0,
0});
this.num_OffsetOrLenght.Name = "num_OffsetOrLenght";
this.num_OffsetOrLenght.Size = new System.Drawing.Size(64, 29);
this.num_OffsetOrLenght.TabIndex = 7;
this.num_OffsetOrLenght.Value = new decimal(new int[] {
1,
0,
0,
0});
//
// label4
//
this.label4.AutoSize = true;
this.label4.ForeColor = System.Drawing.Color.White;
this.label4.Location = new System.Drawing.Point(828, 60);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(97, 21);
this.label4.TabIndex = 6;
this.label4.Text = "位偏移/长度";
//
// label3
//
this.label3.AutoSize = true;
this.label3.ForeColor = System.Drawing.Color.White;
this.label3.Location = new System.Drawing.Point(642, 61);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(74, 21);
this.label3.TabIndex = 4;
this.label3.Text = "起始索引";
//
// txt_VarName
//
this.txt_VarName.Font = new System.Drawing.Font("微软雅黑", 12F);
this.txt_VarName.Location = new System.Drawing.Point(320, 56);
this.txt_VarName.Name = "txt_VarName";
this.txt_VarName.Size = new System.Drawing.Size(134, 29);
this.txt_VarName.TabIndex = 3;
this.txt_VarName.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// label2
//
this.label2.AutoSize = true;
this.label2.ForeColor = System.Drawing.Color.White;
this.label2.Location = new System.Drawing.Point(8, 60);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(90, 21);
this.label2.TabIndex = 2;
this.label2.Text = "通信组名称";
//
// topPanel
//
this.topPanel.Controls.Add(this.btn_Close);
this.topPanel.Controls.Add(this.label1);
this.topPanel.Dock = System.Windows.Forms.DockStyle.Top;
this.topPanel.Location = new System.Drawing.Point(0, 0);
this.topPanel.Name = "topPanel";
this.topPanel.Size = new System.Drawing.Size(1024, 49);
this.topPanel.TabIndex = 0;
this.topPanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseDown);
this.topPanel.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel_MouseMove);
//
// btn_Close
//
this.btn_Close.FlatAppearance.BorderSize = 0;
this.btn_Close.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(29)))), ((int)(((byte)(84)))));
this.btn_Close.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
this.btn_Close.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btn_Close.Font = new System.Drawing.Font("微软雅黑", 15.5F);
this.btn_Close.ForeColor = System.Drawing.Color.White;
this.btn_Close.Location = new System.Drawing.Point(989, 7);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(32, 32);
this.btn_Close.TabIndex = 1;
this.btn_Close.Text = "X";
this.btn_Close.UseVisualStyleBackColor = true;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// label1
//
this.label1.AutoSize = true;
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.Location = new System.Drawing.Point(15, 14);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(74, 21);
this.label1.TabIndex = 0;
this.label1.Text = "变量配置";
//
// FrmVariableConfig
//
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(14)))), ((int)(((byte)(23)))), ((int)(((byte)(38)))));
this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.ClientSize = new System.Drawing.Size(1024, 636);
this.Controls.Add(this.panelExt1);
this.DoubleBuffered = true;
this.Font = new System.Drawing.Font("微软雅黑", 12F);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.Name = "FrmVariableConfig";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "FrmGroupConfig";
this.panelExt1.ResumeLayout(false);
this.panelExt1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.num_Offset)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.num_Scale)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dgv_Main)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.num_OffsetOrLenght)).EndInit();
this.topPanel.ResumeLayout(false);
this.topPanel.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private JinYuan.ControlLib.PanelExt panelExt1;
private System.Windows.Forms.Panel topPanel;
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox txt_Remark;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.ComboBox cmb_GroupName;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.NumericUpDown num_OffsetOrLenght;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.TextBox txt_VarName;
private System.Windows.Forms.DataGridView dgv_Main;
private System.Windows.Forms.Button btn_Modify;
private System.Windows.Forms.Button btn_Delete;
private System.Windows.Forms.Button btn_Add;
private System.Windows.Forms.NumericUpDown num_Offset;
private System.Windows.Forms.Label label9;
private System.Windows.Forms.NumericUpDown num_Scale;
private System.Windows.Forms.Label label8;
private JinYuan.ControlLib.CheckBoxExt chk_NegAlarm;
private JinYuan.ControlLib.CheckBoxExt chk_PosAlarm;
private System.Windows.Forms.ComboBox cmb_DataType;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.TextBox txt_VarAddress;
private System.Windows.Forms.TextBox txt_Start;
private System.Windows.Forms.DataGridViewTextBoxColumn VarName;
private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
private System.Windows.Forms.DataGridViewTextBoxColumn Start;
private System.Windows.Forms.DataGridViewTextBoxColumn OffsetOrLenght;
private System.Windows.Forms.DataGridViewTextBoxColumn DataType;
private System.Windows.Forms.DataGridViewTextBoxColumn Scale;
private System.Windows.Forms.DataGridViewTextBoxColumn Offset;
private System.Windows.Forms.DataGridViewTextBoxColumn PosAlarm;
private System.Windows.Forms.DataGridViewTextBoxColumn NegAlarm;
private System.Windows.Forms.DataGridViewTextBoxColumn GroupName;
private System.Windows.Forms.DataGridViewTextBoxColumn Remark;
}
}
+379
View File
@@ -0,0 +1,379 @@
using JinYuan.Helper;
using JinYuan.Models;
using Language;
using MiniExcelLibs;
using PLC;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
namespace LargeSquareOne
{
public partial class FrmVariableConfig : MultiLanguageForm
{
public FrmVariableConfig()
{
InitializeComponent();
this.cmb_DataType.DataSource = Enum.GetNames(typeof(DataType));
this.dgv_Main.AutoGenerateColumns = false;
List<Group> TotalGroups = GetALLGroups();
TotalVariables = GetALLVariables();
this.cmb_GroupName.SelectedIndexChanged += Cmb_GroupName_SelectedIndexChanged;
if (TotalGroups.Count > 0)
{
foreach (var item in TotalGroups)
{
this.cmb_GroupName.Items.Add(item.GroupName);
}
this.cmb_GroupName.SelectedIndex = 0;
}
}
private void Cmb_GroupName_SelectedIndexChanged(object sender, EventArgs e)
{
RefreshVariable();
}
#region 减少闪烁
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}
#endregion
#region 无边框拖动
private Point mPoint;
private void Panel_MouseDown(object sender, MouseEventArgs e)
{
mPoint = new Point(e.X, e.Y);
}
private void Panel_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);
}
}
#endregion
private string groupPath = Application.StartupPath + "\\Config\\Group.xlsx";
private string variablePath = Application.StartupPath + "\\Config\\Variable.xlsx";
/// <summary>
/// 总变量地址
/// </summary>
private List<Variable> TotalVariables = new List<Variable>();
/// <summary>
/// 单一通信组地址
/// </summary>
private List<Variable> SignelVariables = new List<Variable>();
/// <summary>
/// 获取所有通信组
/// </summary>
/// <returns></returns>
private List<Group> GetALLGroups()
{
try
{
return MiniExcel.Query<Group>(groupPath).ToList();
}
catch (Exception)
{
return new List<Group>();
}
}
/// <summary>
/// 获取所有变量
/// </summary>
/// <returns></returns>
private List<Variable> GetALLVariables()
{
try
{
return MiniExcel.Query<Variable>(variablePath).ToList();
}
catch (Exception)
{
return new List<Variable>();
}
}
#region 根据通信组名称筛选
private List<Variable> GetVariablesByGroupName(string groupName)
{
if (groupName.Length == 0)
{
return TotalVariables;
}
else
{
return TotalVariables.FindAll(x => x.GroupName == groupName).ToList();
}
}
#endregion
/// <summary>
/// 更新变量集合
/// </summary>
private void RefreshVariable()
{
var list = GetVariablesByGroupName(this.cmb_GroupName.Text.Trim());
this.dgv_Main.DataSource = null;
if (list != null && list.Count > 0)
{
SignelVariables = list;
this.dgv_Main.DataSource = list;
}
}
/// <summary>
/// 判断变量名称是否存在
/// </summary>
/// <param name="variableName"></param>
/// <returns></returns>
private bool IsVariableNameExits(string variableName)
{
return TotalVariables.FindAll(c => c.VarName == variableName).ToList().Count < 0;
}
#region 增删改通信组
/// <summary>
/// 增加
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Add_Click(object sender, EventArgs e)
{
string varName = this.txt_VarName.Text.Trim();
if (varName.Length == 0)
{
new FrmMsgBoxOutWithAck(2, "变量名称不能为空!", "添加变量").Show();
return;
}
if (IsVariableNameExits(varName))
{
new FrmMsgBoxOutWithAck(2, "变量名称已存在!", "添加变量").Show();
return;
}
TotalVariables.Add(new Variable()
{
VarName = varName,
VarAddress = this.txt_VarAddress.Text,
Start = this.txt_Start.Text.Trim(),
OffsetOrLenght = Convert.ToUInt16(this.num_OffsetOrLenght.Value),
DataType = this.cmb_DataType.Text.Trim(),
GroupName = this.cmb_GroupName.Text.Trim(),
PosAlarm = this.chk_PosAlarm.Checked,
NegAlarm = this.chk_NegAlarm.Checked,
Scale = Convert.ToSingle(this.num_Scale.Value),
Offset = Convert.ToSingle(this.num_Offset.Value),
Remark = this.txt_Remark.Text.Trim()
});
try
{
MiniExcel.SaveAs(variablePath, TotalVariables, overwriteFile: true);
//刷新数据
RefreshVariable();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3, "添加变量失败:" + ex.Message, "添加变量").Show();
}
}
/// <summary>
/// 删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Delete_Click(object sender, EventArgs e)
{
string varName = this.txt_VarName.Text.Trim();
if (varName.Length == 0)
{
new FrmMsgBoxOutWithAck(2, "请选择需要删除的变量!", "删除变量").Show();
return;
}
if (IsVariableNameExits(varName))
{
new FrmMsgBoxOutWithAck(2, "变量名称不存在!", "变量信组").Show();
return;
}
TotalVariables.RemoveAll(c => c.VarName == varName);
try
{
MiniExcel.SaveAs(variablePath, TotalVariables, overwriteFile: true);
//刷新数据
RefreshVariable();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3, "删除变量失败:" + ex.Message, "删除变量").Show();
}
}
/// <summary>
/// 修改
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Modify_Click(object sender, EventArgs e)
{
string varName = this.txt_VarName.Text.Trim();
if (varName.Length == 0)
{
new FrmMsgBoxOutWithAck(2, "请选择需要修改的变量!", "修改变量").Show();
return;
}
if (IsVariableNameExits(varName))
{
new FrmMsgBoxOutWithAck(2, "变量名称已存在!", "修改变量").Show();
return;
}
var variable = TotalVariables.Find(c => c.VarName == varName);
variable.VarAddress = this.txt_VarAddress.Text.Trim();
variable.Start = this.txt_Start.Text.Trim();
variable.OffsetOrLenght = Convert.ToUInt16(this.num_OffsetOrLenght.Value);
variable.DataType = this.cmb_DataType.Text.Trim();
variable.GroupName = this.cmb_GroupName.Text.Trim();
variable.PosAlarm = this.chk_PosAlarm.Checked;
variable.NegAlarm = this.chk_NegAlarm.Checked;
variable.Scale = Convert.ToSingle(this.num_Scale.Value);
variable.Offset = Convert.ToSingle(this.num_Offset.Value);
variable.Remark = this.txt_Remark.Text.Trim();
try
{
MiniExcel.SaveAs(variablePath, TotalVariables, overwriteFile: true);
//刷新数据
RefreshVariable();
}
catch (Exception ex)
{
new FrmMsgBoxOutWithAck(3, "修改变量失败:" + ex.Message, "修改变量").Show();
}
}
#endregion
private void btn_Close_Click(object sender, EventArgs e)
{
this.Close();
}
/// <summary>
/// 行号
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Main_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
DataGridViewHelper.DgvRowPostPaint((DataGridView)sender, e);
}
/// <summary>
/// 默认为空显示特定字符
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Main_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (e.ColumnIndex >= 0 && e.RowIndex >= 0)
{
object value = this.dgv_Main.Rows[e.RowIndex].Cells[e.ColumnIndex].Value;
if (e.ColumnIndex == 6 || e.ColumnIndex == 7)
{
if (value != null)
{
e.Value = value.ToString() == "True" ? "启用" : "禁用";
}
}
if (value == null || value.ToString().Length == 0)
{
e.Value = "---";
};
}
}
/// <summary>
/// 选中行显示
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dgv_Main_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0)
{
int index = e.RowIndex;
UpdateVariable(SignelVariables[e.RowIndex]); //Variable variable
}
}
private void UpdateVariable(Variable variable)
{
if (variable != null)
{
this.cmb_GroupName.Text = variable.GroupName;
this.txt_VarName.Text = variable.VarName;
this.txt_VarAddress.Text = variable.VarAddress;
this.txt_Start.Text = variable.Start;
this.num_OffsetOrLenght.Value = variable.OffsetOrLenght;
this.cmb_DataType.Text = variable.DataType;
this.chk_NegAlarm.Checked = variable.NegAlarm;
this.chk_PosAlarm.Checked = variable.PosAlarm;
this.num_Scale.Value = Convert.ToDecimal(variable.Scale);
this.num_Offset.Value = Convert.ToDecimal(variable.Offset);
this.txt_Remark.Text = variable.Remark;
}
}
}
}
+153
View File
@@ -0,0 +1,153 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="VarName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Start.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="OffsetOrLenght.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="DataType.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Scale.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Offset.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="PosAlarm.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="NegAlarm.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="GroupName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Remark.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+587
View File
@@ -0,0 +1,587 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{29E1F0D0-43DC-4077-A136-F25477E56881}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>LargeSquareOne</RootNamespace>
<AssemblyName>LargeSquareOne</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<LangVersion>10.0</LangVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>
</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<StartupObject>LargeSquareOne.Program</StartupObject>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>电池.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="AntdUI, Version=1.8.4.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\AntdUI.1.8.4\lib\net48\AntdUI.dll</HintPath>
</Reference>
<Reference Include="BouncyCastle.Crypto, Version=1.9.0.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
<HintPath>..\packages\Portable.BouncyCastle.1.9.0\lib\net40\BouncyCastle.Crypto.dll</HintPath>
</Reference>
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
<HintPath>..\packages\BouncyCastle.Cryptography.2.3.1\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
</Reference>
<Reference Include="CsvHelper, Version=33.0.0.0, Culture=neutral, PublicKeyToken=8c4959082be5c823, processorArchitecture=MSIL">
<HintPath>..\packages\CsvHelper.33.0.1\lib\net48\CsvHelper.dll</HintPath>
</Reference>
<Reference Include="Google.Protobuf, Version=3.26.1.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
<HintPath>..\packages\Google.Protobuf.3.26.1\lib\net45\Google.Protobuf.dll</HintPath>
</Reference>
<Reference Include="HML, Version=8.0.0.6, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>Lib\HML.dll</HintPath>
</Reference>
<Reference Include="HML.ComplexityPropertys, Version=8.0.0.6, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>Lib\HML.ComplexityPropertys.dll</HintPath>
</Reference>
<Reference Include="K4os.Compression.LZ4, Version=1.3.8.0, Culture=neutral, PublicKeyToken=2186fa9121ef231d, processorArchitecture=MSIL">
<HintPath>..\packages\K4os.Compression.LZ4.1.3.8\lib\net462\K4os.Compression.LZ4.dll</HintPath>
</Reference>
<Reference Include="K4os.Compression.LZ4.Streams, Version=1.3.8.0, Culture=neutral, PublicKeyToken=2186fa9121ef231d, processorArchitecture=MSIL">
<HintPath>..\packages\K4os.Compression.LZ4.Streams.1.3.8\lib\net462\K4os.Compression.LZ4.Streams.dll</HintPath>
</Reference>
<Reference Include="K4os.Hash.xxHash, Version=1.0.8.0, Culture=neutral, PublicKeyToken=32cd54395057cec3, processorArchitecture=MSIL">
<HintPath>..\packages\K4os.Hash.xxHash.1.0.8\lib\net462\K4os.Hash.xxHash.dll</HintPath>
</Reference>
<Reference Include="MathNet.Numerics, Version=5.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\MathNet.Numerics.5.0.0\lib\net48\MathNet.Numerics.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.HashCode, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.HashCode.1.1.1\lib\net461\Microsoft.Bcl.HashCode.dll</HintPath>
</Reference>
<Reference Include="MiniExcel, Version=1.36.1.0, Culture=neutral, PublicKeyToken=e7310002a53eac39, processorArchitecture=MSIL">
<HintPath>..\packages\MiniExcel.1.36.1\lib\net45\MiniExcel.dll</HintPath>
</Reference>
<Reference Include="MySql.Data, Version=9.1.0.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
<HintPath>..\packages\MySql.Data.9.1.0\lib\net48\MySql.Data.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="PLCCommunication, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>Lib\PLCCommunication.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="SeeSharpTools.JY.GUI, Version=1.4.4.533, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SeeSharpTools.JY.GUI.1.4.4.533\lib\net40\SeeSharpTools.JY.GUI.dll</HintPath>
</Reference>
<Reference Include="SqlSugar, Version=5.1.4.174, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\SqlSugar.5.1.4.175\lib\SqlSugar.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Configuration" />
<Reference Include="System.Configuration.ConfigurationManager, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Configuration.ConfigurationManager.8.0.0\lib\net462\System.Configuration.ConfigurationManager.dll</HintPath>
</Reference>
<Reference Include="System.Core" />
<Reference Include="System.Data.OracleClient" />
<Reference Include="System.Design" />
<Reference Include="System.Diagnostics.DiagnosticSource, Version=8.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll</HintPath>
</Reference>
<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Pipelines, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Pipelines.7.0.0\lib\net462\System.IO.Pipelines.dll</HintPath>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net" />
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Security" />
<Reference Include="System.Security.AccessControl, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.AccessControl.6.0.0\lib\net461\System.Security.AccessControl.dll</HintPath>
</Reference>
<Reference Include="System.Security.Permissions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Permissions.7.0.0\lib\net462\System.Security.Permissions.dll</HintPath>
</Reference>
<Reference Include="System.Security.Principal.Windows, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Principal.Windows.5.0.0\lib\net461\System.Security.Principal.Windows.dll</HintPath>
</Reference>
<Reference Include="System.ServiceProcess" />
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Windows.Forms.DataVisualization" />
<Reference Include="System.Xaml" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
<Reference Include="WindowsFormsIntegration" />
<Reference Include="ZstdSharp, Version=0.8.0.0, Culture=neutral, PublicKeyToken=8d151af33a4ad5cf, processorArchitecture=MSIL">
<HintPath>..\packages\ZstdSharp.Port.0.8.0\lib\net462\ZstdSharp.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="CustomMessageBox.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="CustomMessageBox.Designer.cs">
<DependentUpon>CustomMessageBox.cs</DependentUpon>
</Compile>
<Compile Include="FrmCpkCount.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmCpkCount.Designer.cs">
<DependentUpon>FrmCpkCount.cs</DependentUpon>
</Compile>
<Compile Include="FrmAlarmLog.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmAlarmLog.Designer.cs">
<DependentUpon>FrmAlarmLog.cs</DependentUpon>
</Compile>
<Compile Include="FrmDataMonitor.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmDataMonitor.Designer.cs">
<DependentUpon>FrmDataMonitor.cs</DependentUpon>
</Compile>
<Compile Include="CommunicationEditForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="CommunicationEditForm.Designer.cs">
<DependentUpon>CommunicationEditForm.cs</DependentUpon>
</Compile>
<Compile Include="FrmHelper.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmHelper.Designer.cs">
<DependentUpon>FrmHelper.cs</DependentUpon>
</Compile>
<Compile Include="FrmLogin.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmLogin.Designer.cs">
<DependentUpon>FrmLogin.cs</DependentUpon>
</Compile>
<Compile Include="FrmLoginMes.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmLoginMes.Designer.cs">
<DependentUpon>FrmLoginMes.cs</DependentUpon>
</Compile>
<Compile Include="FrmMesParamMsgBoxWithAck.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMesParamMsgBoxWithAck.Designer.cs">
<DependentUpon>FrmMesParamMsgBoxWithAck.cs</DependentUpon>
</Compile>
<Compile Include="FrmMain.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMain.Designer.cs">
<DependentUpon>FrmMain.cs</DependentUpon>
</Compile>
<Compile Include="VariableEditForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="VariableEditForm.Designer.cs">
<DependentUpon>VariableEditForm.cs</DependentUpon>
</Compile>
<Compile Include="FrmVariableConfig.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmVariableConfig.Designer.cs">
<DependentUpon>FrmVariableConfig.cs</DependentUpon>
</Compile>
<Compile Include="FrmGroupConfig.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmGroupConfig.Designer.cs">
<DependentUpon>FrmGroupConfig.cs</DependentUpon>
</Compile>
<Compile Include="FrmMsgBoxOutWithAck.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMsgBoxOutWithAck.Designer.cs">
<DependentUpon>FrmMsgBoxOutWithAck.cs</DependentUpon>
</Compile>
<Compile Include="FrmMsgBoxWithAck.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMsgBoxWithAck.Designer.cs">
<DependentUpon>FrmMsgBoxWithAck.cs</DependentUpon>
</Compile>
<Compile Include="FrmUserManage.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmUserManage.Designer.cs">
<DependentUpon>FrmUserManage.cs</DependentUpon>
</Compile>
<Compile Include="FrmHistory.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmHistory.Designer.cs">
<DependentUpon>FrmHistory.cs</DependentUpon>
</Compile>
<Compile Include="FrmRecipe.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmRecipe.Designer.cs">
<DependentUpon>FrmRecipe.cs</DependentUpon>
</Compile>
<Compile Include="FrmParamSet.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmParamSet.Designer.cs">
<DependentUpon>FrmParamSet.cs</DependentUpon>
</Compile>
<Compile Include="FrmMonitor.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMonitor.Designer.cs">
<DependentUpon>FrmMonitor.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="ShutdownProgressForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="ShutdownProgressForm.Designer.cs">
<DependentUpon>ShutdownProgressForm.cs</DependentUpon>
</Compile>
<Compile Include="trw.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="trw.Designer.cs">
<DependentUpon>trw.cs</DependentUpon>
</Compile>
<Compile Include="ViewModel\FrmDataMonitorViewModel.cs" />
<Compile Include="ViewModel\ViewModelBase.cs" />
<EmbeddedResource Include="CustomMessageBox.resx">
<DependentUpon>CustomMessageBox.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmCpkCount.resx">
<DependentUpon>FrmCpkCount.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmAlarmLog.resx">
<DependentUpon>FrmAlarmLog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmDataMonitor.resx">
<DependentUpon>FrmDataMonitor.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="CommunicationEditForm.resx">
<DependentUpon>CommunicationEditForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmHelper.resx">
<DependentUpon>FrmHelper.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmLogin.resx">
<DependentUpon>FrmLogin.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmLoginMes.resx">
<DependentUpon>FrmLoginMes.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmMesParamMsgBoxWithAck.resx">
<DependentUpon>FrmMesParamMsgBoxWithAck.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmMain.resx">
<DependentUpon>FrmMain.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="VariableEditForm.resx">
<DependentUpon>VariableEditForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmVariableConfig.resx">
<DependentUpon>FrmVariableConfig.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmGroupConfig.resx">
<DependentUpon>FrmGroupConfig.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmMsgBoxOutWithAck.resx">
<DependentUpon>FrmMsgBoxOutWithAck.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmMsgBoxWithAck.resx">
<DependentUpon>FrmMsgBoxWithAck.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmUserManage.resx">
<DependentUpon>FrmUserManage.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmHistory.resx">
<DependentUpon>FrmHistory.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmRecipe.resx">
<DependentUpon>FrmRecipe.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmParamSet.resx">
<DependentUpon>FrmParamSet.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FrmMonitor.resx">
<DependentUpon>FrmMonitor.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<SubType>Designer</SubType>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
<EmbeddedResource Include="ShutdownProgressForm.resx">
<DependentUpon>ShutdownProgressForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="trw.resx">
<DependentUpon>trw.cs</DependentUpon>
</EmbeddedResource>
<None Include="Assts\Fonts\FZY4JW.ttf">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Assts\Fonts\taolichunfeng.ttf">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Assts\Fonts\zaozigongfangjinzhuti.ttf">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Assts\Fonts\Zen圓体-Regular.ttf">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Config\Device.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Config\Group.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Config\Motor_ZhiPuJianLouAxle.csv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Config\PLCVariable.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Config\Variable.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<None Include="采集项目表.csv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\JinYuan.ControlCenter\JinYuan.ControlCenters.csproj">
<Project>{1d0fa5a4-07f0-4621-b6bb-683aec91e658}</Project>
<Name>JinYuan.ControlCenters</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.ControlLib\JinYuan.ControlLib.csproj">
<Project>{1bb7ed33-d2cb-4cdd-ab39-f7f9ae948ca2}</Project>
<Name>JinYuan.ControlLib</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.DAL\JinYuan.DAL.csproj">
<Project>{114aa012-29c9-418c-a2d6-3173c5341f51}</Project>
<Name>JinYuan.DAL</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.Helper\JinYuan.Helper.csproj">
<Project>{258d0ab7-2b4f-4d8f-a3cd-7a8cb4a85360}</Project>
<Name>JinYuan.Helper</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.MES\JinYuan.MES.csproj">
<Project>{530B6426-08E7-461C-91DC-787F876620FC}</Project>
<Name>JinYuan.MES</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.Models\JinYuan.Models.csproj">
<Project>{4c0bcb84-5cd7-4846-8363-c4c10d46e391}</Project>
<Name>JinYuan.Models</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.VirtualDataLibrary\JinYuan.VirtualDataLibrary.csproj">
<Project>{2ab7e380-7795-448a-933c-0f6a081b5e7e}</Project>
<Name>JinYuan.VirtualDataLibrary</Name>
</ProjectReference>
<ProjectReference Include="..\Language\Language.csproj">
<Project>{292a5c9c-7a82-4d25-a885-ddcedc93f03c}</Project>
<Name>Language</Name>
</ProjectReference>
<ProjectReference Include="..\PLC\PLC.csproj">
<Project>{486AECD0-C2BF-43C5-B7D7-88E565ADE4B7}</Project>
<Name>PLC</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Content Include="Assts\Image\BackGround.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Assts\Image\Main.jpg">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Assts\Image\电池.ico">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Config\Configure.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Lib\DataConvertLib.dll" />
<Content Include="Lib\DataConvertLib.xml" />
<Content Include="Lib\HML.ComplexityPropertys.dll" />
<Content Include="Lib\HML.ComplexityPropertys.xml" />
<Content Include="Lib\HML.dll" />
<Content Include="Lib\HML.xml" />
<None Include="Resources\黄色-警告.png" />
<Content Include="Lib\PLCCommunication.dll" />
<None Include="Resources\日志查询.png" />
<None Include="Resources\数据查询.png" />
<None Include="Resources\资源 6.png" />
<None Include="Resources\订单查询.png" />
<None Include="Resources\马来西亚国旗1.png" />
<None Include="Resources\美国国旗.png" />
<None Include="Resources\匈牙利国旗1.png" />
<None Include="Resources\中国国旗1.png" />
<None Include="Resources\Login1.png" />
<None Include="Resources\Login11.png" />
<Content Include="电池.ico" />
<None Include="Resources\25_密码.png" />
<None Include="Resources\Exit1.png" />
<Content Include="Resources\IndustryAquaGauge2\Reflection.jpg" />
<Content Include="Resources\IndustrySwitch\垂直关.png" />
<Content Include="Resources\IndustrySwitch\垂直关1.png" />
<Content Include="Resources\IndustrySwitch\垂直开.png" />
<Content Include="Resources\IndustrySwitch\垂直开2.png" />
<Content Include="Resources\IndustrySwitch\按钮关.png" />
<Content Include="Resources\IndustrySwitch\按钮开.png" />
<Content Include="Resources\IndustrySwitch\水平关.png" />
<Content Include="Resources\IndustrySwitch\水平开.png" />
<None Include="Resources\用户.png" />
<None Include="Resources\UserManage.png" />
<None Include="Resources\Login1.jpg" />
<Content Include="Resources\Tank\JYTank.png" />
<None Include="Resources\Alarm.jpg" />
<None Include="Resources\组 178 拷贝1.png" />
<None Include="Resources\星球地球科技蓝色转动动图压缩86.9.gif" />
<None Include="Resources\蓝色.png" />
<None Include="Resources\开机时间.png" />
<None Include="Resources\导航栏.png" />
<None Include="Resources\标题样式一1.png" />
<None Include="Resources\标题样式一.png" />
<None Include="Resources\yiweidongli.png" />
<None Include="Resources\titleBG2.png" />
<None Include="Resources\title2222.png" />
<None Include="Resources\Stop.png" />
<None Include="Resources\Spare.png" />
<None Include="Resources\Run.png" />
<None Include="Resources\Red.png" />
<None Include="Resources\Green.png" />
<None Include="Resources\Fault.png" />
<None Include="Resources\eve.png" />
<None Include="Resources\Blink.gif" />
<None Include="Resources\Exit.png" />
<None Include="Resources\error.png" />
<None Include="Resources\Current.png" />
<None Include="Resources\BackGround.png" />
<None Include="Resources\Alarm.png" />
<None Include="Resources\warning.png" />
<None Include="Resources\User.png" />
<None Include="Resources\TitleBG.png" />
<None Include="Resources\Title.png" />
<None Include="Resources\RightUnSelected.png" />
<None Include="Resources\RightSelected.png" />
<None Include="Resources\Right.png" />
<None Include="Resources\Main.jpg" />
<None Include="Resources\Login.jpg" />
<None Include="Resources\LeftUnSelected.png" />
<None Include="Resources\LeftSelected.png" />
<None Include="Resources\Left.png" />
<None Include="Resources\info.png" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.7.2">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4.7.2 %28x86 和 x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectView>ProjectFiles</ProjectView>
</PropertyGroup>
</Project>
Binary file not shown.
@@ -0,0 +1,732 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>HML.ComplexityPropertys</name>
</assembly>
<members>
<member name="T:HML.TBPadding">
<summary>
上下内边距
</summary>
</member>
<member name="P:HML.TBPadding.All">
<summary>
全部
</summary>
</member>
<member name="P:HML.TBPadding.Top">
<summary>
上边内边距
</summary>
</member>
<member name="P:HML.TBPadding.Bottom">
<summary>
下边内边距
</summary>
</member>
<member name="M:HML.TBPadding.#ctor(System.Int32)">
<summary>
</summary>
<param name="all">全部边距</param>
</member>
<member name="M:HML.TBPadding.#ctor(System.Int32,System.Int32)">
<summary>
</summary>
<param name="top">上边内边距</param>
<param name="bottom">下边内边距</param>
</member>
<member name="M:HML.TBPadding.op_Equality(HML.TBPadding,HML.TBPadding)">
<summary>
判断两个边距对象设置是否一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.TBPadding.op_Inequality(HML.TBPadding,HML.TBPadding)">
<summary>
判断两个边距对象设置是否不一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.TBPadding.GetHashCode">
<summary>
获取该对象的哈希值(参考源码)
</summary>
<returns></returns>
</member>
<member name="M:HML.TBPadding.Equals(System.Object)">
<summary>
判断是否和该对象的引用是一样
</summary>
<param name="other"></param>
<returns></returns>
</member>
<member name="M:HML.TBPadding.ToString">
<summary>
把该对象转换成字符串
</summary>
<returns></returns>
</member>
<member name="M:HML.TBPadding.RotateTop(System.Int32,System.Int32)">
<summary>
计算哈希值(参考源码)
</summary>
<param name="value"></param>
<param name="nBits"></param>
<returns></returns>
</member>
<member name="M:HML.TBPadding.ShouldSerializeAll">
<summary>
是否应该使用All设置初始化对象
</summary>
<returns></returns>
</member>
<member name="T:HML.TBPaddingConverter">
<summary>
上下内边距转换器
</summary>
</member>
<member name="M:HML.TBPaddingConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
<summary>
字符串转对象
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:HML.TBPaddingConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
对象转字符串
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
<member name="T:HML.TBMargin">
<summary>
上下外边距
</summary>
</member>
<member name="P:HML.TBMargin.All">
<summary>
全部
</summary>
</member>
<member name="P:HML.TBMargin.Top">
<summary>
上边外边距
</summary>
</member>
<member name="P:HML.TBMargin.Bottom">
<summary>
下边外边距
</summary>
</member>
<member name="M:HML.TBMargin.#ctor(System.Int32)">
<summary>
</summary>
<param name="all">全部边距</param>
</member>
<member name="M:HML.TBMargin.#ctor(System.Int32,System.Int32)">
<summary>
</summary>
<param name="top">上边外边距</param>
<param name="bottom">下边外边距</param>
</member>
<member name="M:HML.TBMargin.op_Equality(HML.TBMargin,HML.TBMargin)">
<summary>
判断两个边距对象设置是否一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.TBMargin.op_Inequality(HML.TBMargin,HML.TBMargin)">
<summary>
判断两个边距对象设置是否不一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.TBMargin.GetHashCode">
<summary>
获取该对象的哈希值(参考源码)
</summary>
<returns></returns>
</member>
<member name="M:HML.TBMargin.Equals(System.Object)">
<summary>
判断是否和该对象的引用是一样
</summary>
<param name="other"></param>
<returns></returns>
</member>
<member name="M:HML.TBMargin.ToString">
<summary>
把该对象转换成字符串
</summary>
<returns></returns>
</member>
<member name="M:HML.TBMargin.RotateTop(System.Int32,System.Int32)">
<summary>
计算哈希值(参考源码)
</summary>
<param name="value"></param>
<param name="nBits"></param>
<returns></returns>
</member>
<member name="M:HML.TBMargin.ShouldSerializeAll">
<summary>
是否应该使用All设置初始化对象
</summary>
<returns></returns>
</member>
<member name="T:HML.TBMarginConverter">
<summary>
上下外边距转换器
</summary>
</member>
<member name="M:HML.TBMarginConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
<summary>
字符串转对象
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:HML.TBMarginConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
对象转字符串
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
<member name="T:HML.LRPadding">
<summary>
左右内边距
</summary>
</member>
<member name="P:HML.LRPadding.All">
<summary>
全部
</summary>
</member>
<member name="P:HML.LRPadding.Left">
<summary>
左边内边距
</summary>
</member>
<member name="P:HML.LRPadding.Right">
<summary>
右边内边距
</summary>
</member>
<member name="M:HML.LRPadding.#ctor(System.Int32)">
<summary>
</summary>
<param name="all">全部边距</param>
</member>
<member name="M:HML.LRPadding.#ctor(System.Int32,System.Int32)">
<summary>
</summary>
<param name="left">左边内边距</param>
<param name="right">右边内边距</param>
</member>
<member name="M:HML.LRPadding.op_Equality(HML.LRPadding,HML.LRPadding)">
<summary>
判断两个边距对象设置是否一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.LRPadding.op_Inequality(HML.LRPadding,HML.LRPadding)">
<summary>
判断两个边距对象设置是否不一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.LRPadding.GetHashCode">
<summary>
获取该对象的哈希值(参考源码)
</summary>
<returns></returns>
</member>
<member name="M:HML.LRPadding.Equals(System.Object)">
<summary>
判断是否和该对象的引用是一样
</summary>
<param name="other"></param>
<returns></returns>
</member>
<member name="M:HML.LRPadding.ToString">
<summary>
把该对象转换成字符串
</summary>
<returns></returns>
</member>
<member name="M:HML.LRPadding.RotateLeft(System.Int32,System.Int32)">
<summary>
计算哈希值(参考源码)
</summary>
<param name="value"></param>
<param name="nBits"></param>
<returns></returns>
</member>
<member name="M:HML.LRPadding.ShouldSerializeAll">
<summary>
是否应该使用All设置初始化对象
</summary>
<returns></returns>
</member>
<member name="T:HML.LRPaddingConverter">
<summary>
左右内边距转换器
</summary>
</member>
<member name="M:HML.LRPaddingConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
<summary>
字符串转对象
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:HML.LRPaddingConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
对象转字符串
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
<member name="T:HML.LRMargin">
<summary>
左右外边距
</summary>
</member>
<member name="P:HML.LRMargin.All">
<summary>
全部
</summary>
</member>
<member name="P:HML.LRMargin.Left">
<summary>
左边外边距
</summary>
</member>
<member name="P:HML.LRMargin.Right">
<summary>
右边外边距
</summary>
</member>
<member name="M:HML.LRMargin.#ctor(System.Int32)">
<summary>
</summary>
<param name="all">全部边距</param>
</member>
<member name="M:HML.LRMargin.#ctor(System.Int32,System.Int32)">
<summary>
</summary>
<param name="left">左边外边距</param>
<param name="right">右边外边距</param>
</member>
<member name="M:HML.LRMargin.op_Equality(HML.LRMargin,HML.LRMargin)">
<summary>
判断两个边距对象设置是否一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.LRMargin.op_Inequality(HML.LRMargin,HML.LRMargin)">
<summary>
判断两个边距对象设置是否不一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.LRMargin.GetHashCode">
<summary>
获取该对象的哈希值(参考源码)
</summary>
<returns></returns>
</member>
<member name="M:HML.LRMargin.Equals(System.Object)">
<summary>
判断是否和该对象的引用是一样
</summary>
<param name="other"></param>
<returns></returns>
</member>
<member name="M:HML.LRMargin.ToString">
<summary>
把该对象转换成字符串
</summary>
<returns></returns>
</member>
<member name="M:HML.LRMargin.RotateLeft(System.Int32,System.Int32)">
<summary>
计算哈希值(参考源码)
</summary>
<param name="value"></param>
<param name="nBits"></param>
<returns></returns>
</member>
<member name="M:HML.LRMargin.ShouldSerializeAll">
<summary>
是否应该使用All设置初始化对象
</summary>
<returns></returns>
</member>
<member name="T:HML.LRMarginConverter">
<summary>
左右外边距转换器
</summary>
</member>
<member name="M:HML.LRMarginConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
<summary>
字符串转对象
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:HML.LRMarginConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
对象转字符串
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
<member name="T:HML.MultidropSlidePoleAnchorMargin">
<summary>
MultidropSlide滑杆停靠外边距
</summary>
</member>
<member name="P:HML.MultidropSlidePoleAnchorMargin.All">
<summary>
全部
</summary>
</member>
<member name="P:HML.MultidropSlidePoleAnchorMargin.PoleTitle">
<summary>
滑杆为提示标题保留外边距
</summary>
</member>
<member name="P:HML.MultidropSlidePoleAnchorMargin.PoleStart">
<summary>
滑杆开始坐标外边距
</summary>
</member>
<member name="P:HML.MultidropSlidePoleAnchorMargin.PoleEnd">
<summary>
滑杆结束坐标外边距
</summary>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.#ctor(System.Int32)">
<summary>
</summary>
<param name="all">全部</param>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.#ctor(System.Int32,System.Int32,System.Int32)">
<summary>
</summary>
<param name="poleTitle">滑杆为提示标题保留外边距</param>
<param name="poleStart">滑杆开始坐标外边距</param>
<param name="poleEnd">滑杆结束坐标外边距</param>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.op_Equality(HML.MultidropSlidePoleAnchorMargin,HML.MultidropSlidePoleAnchorMargin)">
<summary>
判断两个滑杆停靠外边距对象设置是否一样
</summary>
<param name="arg1"></param>
<param name="arg2"></param>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.op_Inequality(HML.MultidropSlidePoleAnchorMargin,HML.MultidropSlidePoleAnchorMargin)">
<summary>
判断两个滑杆停靠外边距对象设置是否不一样
</summary>
<param name="arg1"></param>
<param name="arg2"></param>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.GetHashCode">
<summary>
获取该对象的哈希值(参考源码)
</summary>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.Equals(System.Object)">
<summary>
判断是否和该对象的引用是一样
</summary>
<param name="other"></param>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.ToString">
<summary>
把该对象转换成字符串
</summary>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.RotateLeftTop(System.Int32,System.Int32)">
<summary>
计算哈希值(参考源码)
</summary>
<param name="value"></param>
<param name="nBits"></param>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMargin.ShouldSerializeAll">
<summary>
是否应该使用All设置初始化对象
</summary>
<returns></returns>
</member>
<member name="T:HML.MultidropSlidePoleAnchorMarginConverter">
<summary>
MultidropSlide滑杆停靠外边距转换器
</summary>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMarginConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
<summary>
字符串转对象
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:HML.MultidropSlidePoleAnchorMarginConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
对象转字符串
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
<member name="T:HML.PointFR">
<summary>
表示在二维平面中定义点的浮点 x 和 y 坐标的有序对。
</summary>
</member>
<member name="M:HML.PointFR.ConvertFrom(System.Drawing.PointF)">
<summary>
System.Drawing.PointF 转换成 PointFR
</summary>
<returns></returns>
</member>
<member name="M:HML.PointFR.ConvertTo">
<summary>
PointFR 转换成 System.Drawing.PointF
</summary>
<returns></returns>
</member>
<member name="T:HML.PointFRConverter">
<summary>
PointFR转换器
</summary>
</member>
<member name="T:HML.PropertyOrderConverter">
<summary>
对属性进行排序
</summary>
</member>
<member name="M:HML.PropertyOrderConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
当该属性为展开属性选型时,属性编辑器删除该属性的描述
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
<member name="T:HML.PropertyOrderPair">
<summary>
属性排序 序号比较器
</summary>
</member>
<member name="P:HML.PropertyOrderPair.CategoryName">
<summary>
类别名称
</summary>
</member>
<member name="M:HML.PropertyOrderPair.#ctor(System.String,System.Single)">
<summary>
</summary>
<param name="categoryName">类别名称</param>
<param name="order">序号</param>
</member>
<member name="T:HML.PropertyOrderAttribute">
<summary>
属性排序(升序)
</summary>
</member>
<member name="P:HML.PropertyOrderAttribute.Order">
<summary>
序号
</summary>
</member>
<member name="M:HML.PropertyOrderAttribute.#ctor(System.Single)">
<summary>
</summary>
<param name="order">序号</param>
</member>
<member name="T:HML.RoundCorner">
<summary>
圆角
</summary>
</member>
<member name="P:HML.RoundCorner.All">
<summary>
全部
</summary>
</member>
<member name="P:HML.RoundCorner.LeftTop">
<summary>
左上角
</summary>
</member>
<member name="P:HML.RoundCorner.RightTop">
<summary>
右上角
</summary>
</member>
<member name="P:HML.RoundCorner.RightBottom">
<summary>
右下角
</summary>
</member>
<member name="P:HML.RoundCorner.LeftBottom">
<summary>
左下角
</summary>
</member>
<member name="M:HML.RoundCorner.#ctor(System.Int32)">
<summary>
</summary>
<param name="all">全部圆角</param>
</member>
<member name="M:HML.RoundCorner.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>
</summary>
<param name="leftTop">左上角</param>
<param name="rightTop">右上角</param>
<param name="rightBottom">右下角</param>
<param name="leftBottom">左下角</param>
</member>
<member name="M:HML.RoundCorner.op_Equality(HML.RoundCorner,HML.RoundCorner)">
<summary>
判断两个圆角对象设置是否一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.RoundCorner.op_Inequality(HML.RoundCorner,HML.RoundCorner)">
<summary>
判断两个圆角对象设置是否不一样
</summary>
<param name="rc1"></param>
<param name="rc2"></param>
<returns></returns>
</member>
<member name="M:HML.RoundCorner.GetHashCode">
<summary>
获取该对象的哈希值(参考源码)
</summary>
<returns></returns>
</member>
<member name="M:HML.RoundCorner.Equals(System.Object)">
<summary>
判断是否和该对象的引用是一样
</summary>
<param name="other"></param>
<returns></returns>
</member>
<member name="M:HML.RoundCorner.ToString">
<summary>
把该对象转换成字符串
</summary>
<returns></returns>
</member>
<member name="M:HML.RoundCorner.RotateLeftTop(System.Int32,System.Int32)">
<summary>
计算哈希值(参考源码)
</summary>
<param name="value"></param>
<param name="nBits"></param>
<returns></returns>
</member>
<member name="M:HML.RoundCorner.ShouldSerializeAll">
<summary>
是否应该使用All设置初始化对象
</summary>
<returns></returns>
</member>
<member name="T:HML.RoundCornerConverter">
<summary>
圆角转换器
</summary>
</member>
<member name="M:HML.RoundCornerConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
<summary>
字符串转对象
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:HML.RoundCornerConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
<summary>
对象转字符串
</summary>
<param name="context"></param>
<param name="culture"></param>
<param name="value"></param>
<param name="destinationType"></param>
<returns></returns>
</member>
</members>
</doc>
Binary file not shown.
File diff suppressed because it is too large Load Diff
Binary file not shown.
+155
View File
@@ -0,0 +1,155 @@
using JinYuan.ControlCenters;
using JinYuan.Helper;
using JinYuan.Models;
using JinYuan.VirtualDataLibrary;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LargeSquareOne
{
internal static class Program
{
#region 调用系统API
[DllImport("User32.dll")]
private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow);
[DllImport("User32.dll")]
private static extern bool SetForegroundWindow(IntPtr hWnd);
private const int SW_MAXIMIZE = 3;
#endregion 调用系统API
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
string strname = Process.GetCurrentProcess().ProcessName;
int a = Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Count();
if (Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Count() > 1)
{
MessageBox.Show("软件已经启动,请在后台确认。");
Thread.Sleep(1000);
Environment.Exit(0);
return;
}
Process instance = GetRunningInstance();
if (instance == null)
{
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
ClearMemoryHelper.ClearMemory();
ReadConfig();
LogHelper.Instance.WriteLog("**********程序开始启动**********");
try
{
if (!CommonMethods.sysConfig.SwipeCardMode)
{
FrmLogin frm = new FrmLogin();
if (frm.ShowDialog() == DialogResult.OK)
{
Application.Run(new FrmMain());
}
}
else
{
Application.Run(new FrmMain());
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
else
{
// 激活以前的实例
HandleRunningInstance(instance);
}
}
/// <summary>
/// 配置,数据库初始化
/// </summary>
public static void ReadConfig()
{
LogHelper.Instance.InitLog(@"D:\Logs\");
// 读取 XML 文件
CommonMethods.Configxml = CommonMethods.ReadXmlConfig(CommonMethods.xmlFilePath);
string MySlqconnString1 = ConfigurationManager.ConnectionStrings[2].ToString();//本地
string MySlqconnString2 = ConfigurationManager.ConnectionStrings[3].ToString();//远端1
string MySlqconnString3 = ConfigurationManager.ConnectionStrings[4].ToString();//远端2
string strDBType = ConfigurationManager.AppSettings["DefaultDb"].ToString();
var connDbType = (SqlSugar.DbType)Enum.Parse(typeof(SqlSugar.DbType), strDBType);
CommonMethods.db.SetConnectionStr(MySlqconnString1, SqlSugar.DbType.MySql);
CommonMethods.dbServer.SetConnectionStr(MySlqconnString2, SqlSugar.DbType.MySql);
CommonMethods.dbServer2.SetConnectionStr(MySlqconnString3, SqlSugar.DbType.MySql);
CommonMethods.sysConfig.SwipeCardMode = Convert.ToBoolean(CommonMethods.GetConfigValue(CommonMethods.Configxml, "MES_CONFIG", "MESModeSwitch", "false"));//开启刷卡模式?
}
/// <summary>
/// 当某个异常未被捕获时出现,回调方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
try
{
Exception ex = (Exception)e.ExceptionObject;
LogHelper.Instance.WriteEX(ex);
MessageBox.Show($"程序出现大异常,请联系 【金源自动化软件设计部】。\r\n异常信息: {ex.Message}\r\n异常堆栈:{ex.StackTrace}",
"致命错误", MessageBoxButtons.OK, MessageBoxIcon.Stop);
}
finally
{
Application.Exit();
}
}
/// <summary>
/// 返回正在运行的程序进程
/// </summary>
/// <returns></returns>
public static Process GetRunningInstance()
{
Process current = Process.GetCurrentProcess();
Process[] processes = Process.GetProcessesByName(current.ProcessName);
foreach (Process process in processes)
{
if (process.Id != current.Id)
if (Assembly.GetExecutingAssembly().Location.Replace("/", "\\") == current.MainModule.FileName)
return process;
}
return null;
}
/// <summary>
/// 已经有了就把它激活,并将其窗口放置最前端
/// </summary>
/// <param name="instance"></param>
public static void HandleRunningInstance(Process instance)
{
ShowWindowAsync(instance.MainWindowHandle, SW_MAXIMIZE);
SetForegroundWindow(instance.MainWindowHandle);
}
}
}
+36
View File
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("LargeSquareOne")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("LargeSquareOne")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("29e1f0d0-43dc-4077-a136-f25477e56881")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
+591
View File
@@ -0,0 +1,591 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace LargeSquareOne.Properties {
using System;
/// <summary>
/// 一个强类型的资源类,用于查找本地化的字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// 返回此类使用的缓存的 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("LargeSquareOne.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 重写当前线程的 CurrentUICulture 属性,对
/// 使用此强类型资源类的所有资源查找执行重写。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap _25_密码 {
get {
object obj = ResourceManager.GetObject("25_密码", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Alarm {
get {
object obj = ResourceManager.GetObject("Alarm", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Alarm1 {
get {
object obj = ResourceManager.GetObject("Alarm1", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap BackGround {
get {
object obj = ResourceManager.GetObject("BackGround", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Blink {
get {
object obj = ResourceManager.GetObject("Blink", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Current {
get {
object obj = ResourceManager.GetObject("Current", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap error {
get {
object obj = ResourceManager.GetObject("error", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap eve {
get {
object obj = ResourceManager.GetObject("eve", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Exit {
get {
object obj = ResourceManager.GetObject("Exit", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Exit1 {
get {
object obj = ResourceManager.GetObject("Exit1", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Fault {
get {
object obj = ResourceManager.GetObject("Fault", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Green {
get {
object obj = ResourceManager.GetObject("Green", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap info {
get {
object obj = ResourceManager.GetObject("info", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Left {
get {
object obj = ResourceManager.GetObject("Left", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap LeftSelected {
get {
object obj = ResourceManager.GetObject("LeftSelected", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap LeftUnSelected {
get {
object obj = ResourceManager.GetObject("LeftUnSelected", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Login {
get {
object obj = ResourceManager.GetObject("Login", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Login11 {
get {
object obj = ResourceManager.GetObject("Login11", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Main {
get {
object obj = ResourceManager.GetObject("Main", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Red {
get {
object obj = ResourceManager.GetObject("Red", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Right {
get {
object obj = ResourceManager.GetObject("Right", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap RightSelected {
get {
object obj = ResourceManager.GetObject("RightSelected", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap RightUnSelected {
get {
object obj = ResourceManager.GetObject("RightUnSelected", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Run {
get {
object obj = ResourceManager.GetObject("Run", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Spare {
get {
object obj = ResourceManager.GetObject("Spare", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找类似 &lt;svg t=&quot;1737110574910&quot; class=&quot;icon&quot; viewBox=&quot;0 0 1024 1024&quot; version=&quot;1.1&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; p-id=&quot;6992&quot; width=&quot;200&quot; height=&quot;200&quot;&gt;&lt;path d=&quot;M512 62.389956c-248.312412 0-449.610044 201.297632-449.610044 449.610044s201.297632 449.610044 449.610044 449.610044 449.610044-201.297632 449.610044-449.610044S760.312412 62.389956 512 62.389956zM786.507004 786.507004c-35.672454 35.672454-77.196173 63.672158-123.416867 83.222423-47.821145 20.22667-98.655927 30.482245-151.09116 30.482245-52.435233 0-103.2 [字符串的其余部分被截断]&quot;; 的本地化字符串。
/// </summary>
internal static string StartPLC {
get {
return ResourceManager.GetString("StartPLC", resourceCulture);
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Stop {
get {
object obj = ResourceManager.GetObject("Stop", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找类似 &lt;svg t=&quot;1737111620791&quot; class=&quot;icon&quot; viewBox=&quot;0 0 1030 1024&quot; version=&quot;1.1&quot; xmlns=&quot;http://www.w3.org/2000/svg&quot; p-id=&quot;9733&quot; width=&quot;200&quot; height=&quot;200&quot;&gt;&lt;path d=&quot;M511.999996 0C229.260123 0-4.0e-06 229.238701-4.0e-06 512c0 282.782725 229.238701 512 512 512 282.782725 0 512-229.217275 512-512C1024.021422 229.238701 794.804147 0 511.999996 0zM511.999996 958.842986c-246.786743 0-446.82156-200.056244-446.82156-446.842986 0-246.786743 200.056244-446.82156 446.82156-446.82156 246.829595 0 446.842986 200.034818 446.842986 [字符串的其余部分被截断]&quot;; 的本地化字符串。
/// </summary>
internal static string StopPLC {
get {
return ResourceManager.GetString("StopPLC", resourceCulture);
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap Title {
get {
object obj = ResourceManager.GetObject("Title", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap title2222 {
get {
object obj = ResourceManager.GetObject("title2222", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap TitleBG {
get {
object obj = ResourceManager.GetObject("TitleBG", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap titleBG2 {
get {
object obj = ResourceManager.GetObject("titleBG2", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap User {
get {
object obj = ResourceManager.GetObject("User", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap UserManage {
get {
object obj = ResourceManager.GetObject("UserManage", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap warning {
get {
object obj = ResourceManager.GetObject("warning", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap yiweidongli {
get {
object obj = ResourceManager.GetObject("yiweidongli", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 中国国旗 {
get {
object obj = ResourceManager.GetObject("中国国旗", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 匈牙利国旗 {
get {
object obj = ResourceManager.GetObject("匈牙利国旗", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 导航栏 {
get {
object obj = ResourceManager.GetObject("导航栏", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 开机时间 {
get {
object obj = ResourceManager.GetObject("开机时间", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 数据查询 {
get {
object obj = ResourceManager.GetObject("数据查询", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 日志查询 {
get {
object obj = ResourceManager.GetObject("日志查询", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 星球地球科技蓝色转动动图压缩86_9 {
get {
object obj = ResourceManager.GetObject("星球地球科技蓝色转动动图压缩86_9", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 标题样式一 {
get {
object obj = ResourceManager.GetObject("标题样式一", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 标题样式一1 {
get {
object obj = ResourceManager.GetObject("标题样式一1", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 用户 {
get {
object obj = ResourceManager.GetObject("用户", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 组_178_拷贝1 {
get {
object obj = ResourceManager.GetObject("组_178_拷贝1", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 美国国旗 {
get {
object obj = ResourceManager.GetObject("美国国旗", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 蓝色 {
get {
object obj = ResourceManager.GetObject("蓝色", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 订单查询 {
get {
object obj = ResourceManager.GetObject("订单查询", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 资源_6 {
get {
object obj = ResourceManager.GetObject("资源_6", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 马来西亚国旗 {
get {
object obj = ResourceManager.GetObject("马来西亚国旗", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
/// </summary>
internal static System.Drawing.Bitmap 黄色_警告 {
get {
object obj = ResourceManager.GetObject("黄色_警告", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
}
}
+280
View File
@@ -0,0 +1,280 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="25_密码" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\25_密码.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Alarm" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Alarm.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Alarm1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Alarm.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="BackGround" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\BackGround.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Blink" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Blink.gif;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Current" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Current.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="error" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\error.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="eve" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\eve.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Exit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Exit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Exit1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Exit1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Fault" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Fault.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Green" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Green.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="info" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\info.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Left" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Left.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="LeftSelected" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\LeftSelected.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="LeftUnSelected" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\LeftUnSelected.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Login" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Login.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Login11" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Login11.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Main" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Main.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Red" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Red.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Right" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Right.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="RightSelected" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\RightSelected.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="RightUnSelected" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\RightUnSelected.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Run" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Run.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Spare" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Spare.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="StartPLC" xml:space="preserve">
<value>&lt;svg t="1737110574910" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6992" width="200" height="200"&gt;&lt;path d="M512 62.389956c-248.312412 0-449.610044 201.297632-449.610044 449.610044s201.297632 449.610044 449.610044 449.610044 449.610044-201.297632 449.610044-449.610044S760.312412 62.389956 512 62.389956zM786.507004 786.507004c-35.672454 35.672454-77.196173 63.672158-123.416867 83.222423-47.821145 20.22667-98.655927 30.482245-151.09116 30.482245-52.435233 0-103.270015-10.255575-151.09116-30.482245-46.220694-19.549242-87.744413-47.549969-123.416867-83.222423-35.672454-35.672454-63.672158-77.196173-83.222423-123.416867-20.22667-47.821145-30.482245-98.655927-30.482245-151.090137 0-52.435233 10.255575-103.270015 30.482245-151.09116 19.549242-46.220694 47.549969-87.744413 83.222423-123.416867 35.672454-35.672454 77.196173-63.672158 123.416867-83.222423 47.821145-20.22667 98.654904-30.482245 151.09116-30.482245 52.435233 0 103.268992 10.255575 151.09116 30.482245 46.220694 19.549242 87.744413 47.549969 123.416867 83.222423 35.672454 35.672454 63.672158 77.196173 83.222423 123.416867 20.22667 47.821145 30.482245 98.655927 30.482245 151.09116 0 52.435233-10.255575 103.268992-30.482245 151.090137C850.179163 709.310831 822.179458 750.83455 786.507004 786.507004z" p-id="6993"&gt;&lt;/path&gt;&lt;path d="M727.558427 506.975567l-334.355067-252.891707c-3.868097-2.232854-8.702196 0.558725-8.702196 5.024433l0 505.782392c0 4.465708 4.834098 7.257288 8.702196 5.024433l334.355067-252.890684C731.426525 514.791579 731.426525 509.208421 727.558427 506.975567z" p-id="6994"&gt;&lt;/path&gt;&lt;/svg&gt;</value>
</data>
<data name="Stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Stop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="StopPLC" xml:space="preserve">
<value>&lt;svg t="1737111620791" class="icon" viewBox="0 0 1030 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9733" width="200" height="200"&gt;&lt;path d="M511.999996 0C229.260123 0-4.0e-06 229.238701-4.0e-06 512c0 282.782725 229.238701 512 512 512 282.782725 0 512-229.217275 512-512C1024.021422 229.238701 794.804147 0 511.999996 0zM511.999996 958.842986c-246.786743 0-446.82156-200.056244-446.82156-446.842986 0-246.786743 200.056244-446.82156 446.82156-446.82156 246.829595 0 446.842986 200.034818 446.842986 446.82156C958.864408 758.786743 758.829591 958.842986 511.999996 958.842986z" p-id="9734"&gt;&lt;/path&gt;&lt;path d="M365.102105 328.52762l85.70472 0 0 385.671242-85.70472 0 0-385.671242Z" p-id="9735"&gt;&lt;/path&gt;&lt;path d="M536.511546 328.52762l107.130901 0 0 385.671242-107.130901 0 0-385.671242Z" p-id="9736"&gt;&lt;/path&gt;&lt;/svg&gt;</value>
</data>
<data name="Title" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Title.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="title2222" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\title2222.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="TitleBG" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TitleBG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="titleBG2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\titleBG2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="User" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\User.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="UserManage" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\UserManage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="warning" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\warning.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="yiweidongli" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\yiweidongli.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="中国国旗" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\中国国旗1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="匈牙利国旗" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\匈牙利国旗1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="导航栏" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\导航栏.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="开机时间" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\开机时间.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="数据查询" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\数据查询.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="日志查询" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\日志查询.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="星球地球科技蓝色转动动图压缩86_9" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\星球地球科技蓝色转动动图压缩86.9.gif;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="标题样式一" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\标题样式一.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="标题样式一1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\标题样式一1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="用户" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\用户.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="组_178_拷贝1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\组 178 拷贝1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="美国国旗" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\美国国旗.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="蓝色" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\蓝色.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="订单查询" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\订单查询.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="资源_6" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\资源 6.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="马来西亚国旗" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\马来西亚国旗1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="黄色_警告" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\黄色-警告.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>
+26
View File
@@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace LargeSquareOne.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.11.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
}
}
@@ -0,0 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles />
<Settings />
</SettingsFile>
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 833 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Some files were not shown because too many files have changed in this diff Show More