|
- using CCWin.Win32;
- using MaiMuAOI.SysCtrl;
- using MaiMuAOI.SysUI.DefectPicShow;
- using MaiMuAOI.SysUI.ProcessStep.Prop;
- using MaiMuAOI.SysUI.ProductAndStep;
- using Models;
- using Newtonsoft.Json;
- using Newtonsoft.Json.Linq;
- using OpenCvSharp.Flann;
- using ProductionControl.UI;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using System.Windows.Forms;
-
- namespace MaiMuAOI.SysUI.ProcessStep
- {
- public partial class StepProcessFrm : Form
- {
- public int StepID = 0;
-
- Service.StepService service = new Service.StepService();
- Models.Step model = new Models.Step();
-
- DebugTestFrm frm;
- //工序库参数
- string LibprocessCode;
- TensionProp _libTensionProp;
- ThicknessProp _libThicknessProp;
- LensProp _libLensProp;
- LightProp _libLightProp;
- MarkProp _libMarkProp;
- PointTestProp _libPointTestProp;
- SizeDefectProp _libSizeDefectProp;
- ForProp _libForProp;
- //流程参数
- TensionProp _ProcessTensionProp;
- ThicknessProp _ProcessThicknessProp;
- LensProp _ProcessLensProp;
- LightProp _ProcessLightProp;
- MarkProp _ProcessMarkProp;
- PointTestProp _ProcessPointTestProp;
- SizeDefectProp _ProcessSizeDefectProp;
- ForProp _ProcessForProp;
-
- SynchronizationContext SyncContext = null;
-
- public StepProcessFrm(Models.Step m = null)
- {
- InitializeComponent();
- UIStyle.SetUIStyle(this);
- this.uiTitel1.FatherForm = this;
-
- dataGridView1.AutoGenerateColumns = false;
- dataGridView2.AutoGenerateColumns = false;
- //显示行号与列宽度自动调整
- dataGridView2.RowHeadersVisible = true;
- dataGridView2.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders;
- dataGridView2.RowPostPaint += (sender, e) =>
- {
- SysMgr.showRowNum_onDataGrid_RowPostPaint(this.dataGridView2, sender, e);
- };
-
- dataGridView1.DefaultCellStyle.ForeColor = Color.Black;
- dataGridView2.DefaultCellStyle.ForeColor = Color.Black;
- //获取UI线程同步上下文
- SyncContext = SynchronizationContext.Current;
-
- if (m == null)
- model.ProcessList = new List<Models.StepProcess>();
- else
- model = m;
- }
-
- private void InitDataView()
- {
- this.Cursor = Cursors.WaitCursor;
- dataGridView1.Columns.Add("colCode", "code");
- //DataGridViewComboBoxColumn col = new DataGridViewComboBoxColumn();
- //col.Name = "colName";
- //col.HeaderText = "工序";
- //dataGridView1.Columns.Add(col);
- dataGridView1.Columns.Add("colName", "工序");
- dataGridView1.Columns[0].Visible = false;
- dataGridView1.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
-
- foreach (var item in SysMgr.ProcessType)
- dataGridView1.Rows.Add(item.Key, item.Value);
-
- for (int i = 0; i < this.dataGridView1.Columns.Count; i++)
- {
- this.dataGridView1.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
- }
- int rowHeight = (dataGridView1.Height - dataGridView1.ColumnHeadersHeight - 5)/ dataGridView1.Rows.Count;
- for (int i = 0; i < this.dataGridView1.Rows.Count; i++)
- {
- this.dataGridView1.Rows[i].Height = rowHeight;
- }
- //
- this.txtCode.Text = model.Code;
- this.txtName.Text = model.Name;
- this.numStartTimeIndex.Value = model.StartTimeIndex;
- if (model.ProcessList != null)
- dataGridView2.DataSource = new BindingSource(model.ProcessList, null);
-
- for (int i = 0; i < this.dataGridView2.Columns.Count; i++)
- {
- this.dataGridView2.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
- }
-
- this.Cursor = Cursors.Default;
- }
-
- private void StepProcessFrm_Load(object sender, EventArgs e)
- {
- InitDataView();
- }
-
- #region private
- private void reOrderProcess()
- {
- for (int i = 0; i < model.ProcessList.Count; i++)
- model.ProcessList[i].Order = i;
- }
- private void refreshDataGridView()
- {
- dataGridView2.DataSource = null;
- dataGridView2.DataSource = new BindingSource(model.ProcessList, null);
- }
- #endregion
-
- #region 工具栏
- private void tsbtnSave_Click(object sender, EventArgs e)
- {
- try
- {
- SaveOldValue();
-
- //string szCode = this.txtCode.Text.Trim();
- string szCode = this.txtName.Text.Trim();
- string szName = this.txtName.Text.Trim();
- if (szCode == "" || szName == "")
- throw new Exception("请填写编号和名称!");
- if (model.ProcessList == null || model.ProcessList.Count == 0)
- throw new Exception("请添加流程工序!");
- int index = 0;
- int TensionCnt = 0;
- foreach (var item in model.ProcessList)
- {
- if (string.IsNullOrWhiteSpace(item.ProcessParams))
- throw new Exception($"{SysMgr.ProcessType[item.ProcessCode]} 配方未设置!");
- //张力检测一定要第一步,防呆
- if (item.ProcessCode == "Tension" && index != 0)
- {
- throw new Exception("张力测量工序必须在第一步!");
- }
- else if (item.ProcessCode == "Tension")
- {
- TensionCnt++;//记录张力测试是否重复
- }
- if(TensionCnt >1)
- throw new Exception("张力测量工序只能存在一次!");
- if (item.ProcessCode == "Height" )
- {
- if(TensionCnt >0 && index != 1)
- throw new Exception("厚度测量工序必须在张力测量工序之后!");
- else if (TensionCnt == 0 && index != 0)
- throw new Exception("厚度测量工序必须在第一步!");
- }
- List<StepProcess> tlist = model.ProcessList.GroupBy(p => p.ProcessName).Select(q => q.First()).ToList();
-
- if (tlist.Count() != model.ProcessList.Count())
- {
- throw new Exception("步骤名称重复!");
- }
- index++;
- }
- model.ProcessType = "快速流程";
- model.Code = szCode;
- model.Name = szName;
- model.StartTimeIndex = (int)numStartTimeIndex.Value;
- model.ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code;
- bool result;
- if (model.Id == 0)
- {
- model.CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code;
- result = service.InsertNav(model);
- model = service.GetListNav(0).Find(x => x.Code == szCode && x.Name == szName);
- }
- else
- result = service.UpdateNav(model);
-
- StepID = model.Id;
- if (!result)
- throw new Exception("保存失败!");
-
- SysMgr.Instance.WriteSysEditLog("流程设置修改", JsonConvert.SerializeObject(model));
-
- MessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- this.Close();
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void tsbtnExit_Click(object sender, EventArgs e)
- {
- this.Close();
- }
-
- private void tsbDebug_Click(object sender, EventArgs e)
- {
- if ((frm == null) || (frm.IsDisposed))
- frm = new DebugTestFrm();
- //frm.TopMost = true;
- frm.Show();
- }
- #endregion
-
- #region 工序库表格
- private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
- {
- int Index = this.dataGridView1.CurrentRow.Index;//获取当前选中行的索引
- if (Index < this.dataGridView1.Rows.Count)
- {
- string processCode = this.dataGridView1.Rows[Index].Cells["colCode"].Value.ToString();
- bool IsSupport = SysMgr.ProcessType.ContainsKey(processCode);
-
- if (IsSupport)
- {
- LibprocessCode = processCode;
- switch (processCode)
- {
- case "Tension":
- _libTensionProp = new TensionProp();
- LibPropertyGrid.SelectedObject = _libTensionProp;
- break;
- case "Height":
- _libThicknessProp = new ThicknessProp();
- LibPropertyGrid.SelectedObject = _libThicknessProp;
- break;
- case "LensMotor":
- _libLensProp = new LensProp();
- LibPropertyGrid.SelectedObject = _libLensProp;
- break;
- case "Light":
- _libLightProp = new LightProp();
- LibPropertyGrid.SelectedObject = _libLightProp;
- break;
- case "Mark":
- _libMarkProp = new MarkProp();
- LibPropertyGrid.SelectedObject = _libMarkProp;
- break;
- case "PointTest":
- _libPointTestProp = new PointTestProp();
- LibPropertyGrid.SelectedObject = _libPointTestProp;
- break;
- case "SizeAndDefect":
- _libSizeDefectProp = new SizeDefectProp();
- LibPropertyGrid.SelectedObject = _libSizeDefectProp;
- break;
- case "For":
- _libForProp = new ForProp();
- LibPropertyGrid.SelectedObject = _libForProp;
- break;
-
- }
- LibPropertyGrid.Refresh();
- this.Refresh();
- }
- else
- {
- //MessageBox.Show("不支持改功能!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Information );
- }
- }
- }
- #endregion
-
- #region 流程表格
- //单元格编译完成
- private void dataGridView2_CellEndEdit(object sender, DataGridViewCellEventArgs e)
- {
- var value = dataGridView2.Rows[e.RowIndex].Cells["colProcessName"].Value;
- if (value == null || value.ToString().Trim() == "")
- {
- dataGridView2.Rows[e.RowIndex].Cells["colProcessName"].Value = dataGridView2.Rows[e.RowIndex].Cells["colTypeName"].Value;
- }
- }
-
- int oldIndex = 0;
- string oldProcessCode = "";
- private void dataGridView2_CellClick(object sender, DataGridViewCellEventArgs e)
- {
- int Index = this.dataGridView2.CurrentRow.Index;//获取当前选中行的索引
- if (Index < this.dataGridView2.Rows.Count)
- {
- SaveOldValue();
-
- string processCode = this.dataGridView2.Rows[Index].Cells["colProcessCode"].Value.ToString();
- string processParams = this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value.ToString();
- bool IsSupport = SysMgr.ProcessType.ContainsKey(processCode);
-
- oldIndex = Index;
- if (IsSupport)
- {
- oldProcessCode = processCode;
- switch (processCode)
- {
- case "Tension":
- _ProcessTensionProp = new TensionProp();
- _ProcessTensionProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessTensionProp;
- break;
- case "Height":
- _ProcessThicknessProp = new ThicknessProp();
- _ProcessThicknessProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessThicknessProp;
- break;
- case "LensMotor":
- _ProcessLensProp = new LensProp();
- _ProcessLensProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessLensProp;
- break;
- case "Light":
- _ProcessLightProp = new LightProp();
- _ProcessLightProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessLightProp;
- break;
- case "Mark":
- _ProcessMarkProp = new MarkProp();
- _ProcessMarkProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessMarkProp;
- break;
- case "PointTest":
- _ProcessPointTestProp = new PointTestProp();
- _ProcessPointTestProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessPointTestProp;
- break;
- case "SizeAndDefect":
- _ProcessSizeDefectProp = new SizeDefectProp();
- _ProcessSizeDefectProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessSizeDefectProp;
- break;
- case "For":
- _ProcessForProp = new ForProp();
- _ProcessForProp.deserialize(processParams);
- ProcessPropertyGrid.SelectedObject = _ProcessForProp;
- break;
-
- }
- ProcessPropertyGrid.Refresh();
- this.Refresh();
- }
- else
- {
- //MessageBox.Show("不支持改功能!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Information );
- }
- }
- }
-
- private void SaveOldValue()
- {
- bool IsSupport = SysMgr.ProcessType.ContainsKey(oldProcessCode);
-
- if (oldIndex >= this.dataGridView2.Rows.Count)
- return;
- if (IsSupport)
- {
- switch (oldProcessCode)
- {
- case "Tension":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessTensionProp.serialize();
- break;
- case "Height":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessThicknessProp.serialize();
- break;
- case "LensProp":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessLensProp.serialize();
- break;
- case "Light":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessLightProp.serialize();
- break;
- case "Mark":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessMarkProp.serialize();
- break;
- case "SizeAndDefect":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessSizeDefectProp.serialize();
- break;
- case "PointTest":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessPointTestProp.serialize();
- break;
- case "For":
- this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessForProp.serialize();
- break;
- }
- }
- }
-
- private void dataGridView2_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
- {
- for (int i = 0; i < dataGridView2.Rows.Count; i++)
- {
- if (SysMgr.ProcessType.ContainsKey(dataGridView2.Rows[i].Cells[0].Value.ToString()))
- {
- dataGridView2.Rows[i].Cells["colTypeName"].Value = SysMgr.ProcessType[dataGridView2.Rows[i].Cells[0].Value.ToString()];
- }
- else
- {
- dataGridView2.Rows[i].Cells["colTypeName"].Value = "不支持";
- dataGridView2.Rows[i].DefaultCellStyle.BackColor = Color.Yellow;
- }
- }
- }
- #endregion
-
- #region 操作按钮
- private void btnAdd_Click(object sender, EventArgs e)
- {
- try
- {
- if (this.dataGridView1.SelectedRows.Count != 1)
- throw new Exception("请选择要插入的工序!");
-
- string processCode = this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
- string processParams = "";
- switch (LibprocessCode)
- {
- case "Tension":
- processParams = _libTensionProp.serialize();
- break;
- case "Height":
- processParams = _libThicknessProp.serialize();
- break;
- case "LensMotor":
- processParams = _libLensProp.serialize();
- break;
- case "Light":
- processParams = _libLightProp.serialize();
- break;
- case "Mark":
- processParams = _libMarkProp.serialize();
- break;
- case "PointTest":
- processParams = _libPointTestProp.serialize();
- break;
- case "SizeAndDefect":
- processParams = _libSizeDefectProp.serialize();
- break;
- case "For":
- processParams = _libForProp.serialize();
- break;
-
- }
- model.ProcessList.Add(new Models.StepProcess()
- {
- ProcessCode = processCode,
- ProcessName = SysMgr.ProcessType[processCode],
- ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code,
- CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code,
- ProcessParams = processParams
- });
-
- reOrderProcess();
- this.refreshDataGridView();
- this.dataGridView2.Rows[this.dataGridView2.Rows.Count - 1].Selected = true;
- dataGridView2.CurrentCell = dataGridView2.Rows[this.dataGridView2.Rows.Count - 1].Cells[1];
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void btnInsert_Click(object sender, EventArgs e)
- {
- try
- {
- if (this.dataGridView1.SelectedRows.Count != 1)
- throw new Exception("请选择要插入的工序!");
-
- string processCode = this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
- int liInsertIndex = this.dataGridView2.Rows.Count;
- if (this.dataGridView2.SelectedRows.Count > 0)
- liInsertIndex = this.dataGridView2.SelectedRows[0].Index;
- if (liInsertIndex <= oldIndex)
- oldIndex++;
- string processParams = "";
- switch (LibprocessCode)
- {
- case "Tension":
- processParams = _libTensionProp.serialize();
- break;
- case "Height":
- processParams = _libThicknessProp.serialize();
- break;
- case "LensMotor":
- processParams = _libLensProp.serialize();
- break;
- case "Light":
- processParams = _libLightProp.serialize();
- break;
- case "Mark":
- processParams = _libMarkProp.serialize();
- break;
- case "PointTest":
- processParams = _libPointTestProp.serialize();
- break;
- case "SizeAndDefect":
- processParams = _libSizeDefectProp.serialize();
- break;
-
- }
- model.ProcessList.Insert(liInsertIndex, new Models.StepProcess()
- {
- ProcessCode = processCode,
- ProcessName = SysMgr.ProcessType[processCode],
- Order = liInsertIndex,
- ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code,
- CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code,
- ProcessParams = processParams
- });
- reOrderProcess();
- this.refreshDataGridView();
- this.dataGridView2.Rows[liInsertIndex].Selected = true;
- dataGridView2.CurrentCell = dataGridView2.Rows[liInsertIndex].Cells[1];
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void btnDel_Click(object sender, EventArgs e)
- {
- try
- {
- if (this.dataGridView2.SelectedRows.Count != 1)
- throw new Exception("请选择要删除的工序!");
-
- int liRowIndex = this.dataGridView2.SelectedRows[0].Index;
- model.ProcessList.RemoveAt(liRowIndex);
- if (liRowIndex >= dataGridView2.Rows.Count - 1)
- liRowIndex = dataGridView2.Rows.Count - 1;
-
- if (liRowIndex < oldIndex)
- oldIndex--;
- else if (liRowIndex == oldIndex)
- {
- oldIndex = 0;
- oldProcessCode = "";
- }
-
- dataGridView2.CurrentCell = dataGridView2.Rows[liRowIndex].Cells[1];
- //reOrderProcess();
- this.refreshDataGridView();
-
- if (dataGridView2.Rows.Count < 1)
- return;
- if (liRowIndex >= dataGridView2.Rows.Count)
- liRowIndex = dataGridView2.Rows.Count - 1;
- dataGridView2.CurrentCell = dataGridView2.Rows[liRowIndex].Cells[1];
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void btnUp_Click(object sender, EventArgs e)
- {
- try
- {
- if (this.dataGridView2.SelectedRows.Count != 1)
- throw new Exception("请选择要调整顺序的工序!");
- int liSelIndex = this.dataGridView2.SelectedRows[0].Index;
- if (liSelIndex == 0)
- return;
- if(liSelIndex == oldIndex)
- oldIndex--;
- else if (liSelIndex == (oldIndex + 1))
- oldIndex++;
- model.ProcessList.Insert(liSelIndex - 1, model.ProcessList[liSelIndex]);
- model.ProcessList.RemoveAt(liSelIndex + 1);
- reOrderProcess();
- this.refreshDataGridView();
- this.dataGridView2.Rows[liSelIndex - 1].Selected = true;
- dataGridView2.CurrentCell = dataGridView2.Rows[liSelIndex - 1].Cells[1];
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
- private void btnDown_Click(object sender, EventArgs e)
- {
- try
- {
- if (this.dataGridView2.SelectedRows.Count != 1)
- throw new Exception("请选择要调整顺序的工序!");
- int liSelIndex = this.dataGridView2.SelectedRows[0].Index;
- if (liSelIndex == this.dataGridView2.Rows.Count - 1)
- return;
- if (liSelIndex == oldIndex)
- oldIndex++;
- else if (liSelIndex == (oldIndex - 1))
- oldIndex--;
- model.ProcessList.Insert(liSelIndex + 2, model.ProcessList[liSelIndex]);
- model.ProcessList.RemoveAt(liSelIndex);
- reOrderProcess();
- this.refreshDataGridView();
- this.dataGridView2.Rows[liSelIndex + 1].Selected = true;
- dataGridView2.CurrentCell = dataGridView2.Rows[liSelIndex + 1].Cells[1];
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
-
- #endregion
-
-
- private void refreshUI()
- {
- SyncContext.Post(m =>
- {
- var result = m as string;
- ProcessPropertyGrid.Refresh();
- //tbtnJogOnOff.Text = (prop.AxState == AxisState.STA_AX_EXT_JOG) ? "关闭Jog" : "开启Jog";
- //tbtnLeft.Enabled = tbtnRight.Enabled = (prop.AxState == AxisState.STA_AX_EXT_JOG);
- }, "异步操作完成结果");
-
-
- }
- private void ProcessPropertyGrid_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
- {
- //其中包含了两个重要的属性:OldValue和ChangeItem。
- //ChangeItem是“PropertyDescriptorGridEntry”类型。一般可以通过ChangeItem.PropertyDescriptor.ComponentType查找到属性的实际类型。
- //而通过ChangeItem的Label,则可以查看到当前在属性编辑输入框中显示的值。
- int Index = this.dataGridView2.CurrentRow.Index;//获取当前选中行的索引
- string className = e.ChangedItem.PropertyDescriptor.ComponentType.Name;
- string propertyName = e.ChangedItem.PropertyDescriptor.Name;
- var oldValue = e.OldValue;
- var newValue = e.ChangedItem.Value;
-
- switch (propertyName)
- {
- case "ChannelIndex":
- if ((int)newValue < 1 || (int)newValue > 6)
- {
- _ProcessLightProp.ChannelIndex = (int)oldValue;
- this.refreshUI();
- }
- else
- {
- //dev.getDigitalValue((int)newValue);
- }
- break;
- case "DigitalValue":
- if ((int)newValue < 0 || (int)newValue > 255)
- {
- _ProcessLightProp.DigitalValue = (int)oldValue;
- this.refreshUI();
- }
- break;
- //case "ThresholdsClass":
- // if (!IsNumber(newValue.ToString().Replace("-", "").Replace(",", "").Replace(";", "").Replace(".", "")))
- // txtLog.Text = "种类阀值只可输入数字!";
- // else if (!verifyThresholdsCount(newValue.ToString(), prop.ThresholdsClassCount))
- // txtLog.Text = "输入种类阀值与数量不一致!";
- // else
- // txtLog.Text = "";
- // break;
- //case "ThresholdsClassCount":
- // if (!verifyThresholdsCount(prop.ThresholdsClass, (int)newValue))
- // txtLog.Text = "输入种类阀值与数量不一致!";
- // else
- // txtLog.Text = "";
- // break;
- }
- switch (className)
- {
- case "TensionProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessTensionProp.serialize();
- break;
- case "ThicknessProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessThicknessProp.serialize();
- break;
- case "LensProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessLensProp.serialize();
- break;
- case "LightProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessLightProp.serialize();
- break;
- case "MarkProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessMarkProp.serialize();
- break;
- case "SizeDefectProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessSizeDefectProp.serialize();
- break;
- case "PointTestProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessPointTestProp.serialize();
- break;
- case "ForProp":
- this.dataGridView2.Rows[Index].Cells["colProcessParams"].Value = _ProcessForProp.serialize();
- break;
- }
-
- }
-
- private void ProcessPropertyGrid_SelectedObjectsChanged(object sender, EventArgs e)
- {
-
- }
-
- private void StepProcessFrm_FormClosed(object sender, FormClosedEventArgs e)
- {
- if (frm != null)
- frm.Close();
- }
- }
- }
|