123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 |
- using OTSCommon;
- using System;
- using System.Collections;
- 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 OTSMeasureApp._7_OTSProgMgrInfo
- {
- public partial class SpecialParticleForm : Form
- {
- private string xmlPath = "";
- private string str_RegName = "default";
- private string str_start = "0";
- private string str_end = "100";
- private string str_diameterStart = "0";
- private string str_diameterEnd = "100";
- private string str_collectXray = "false";
- //国际化
- OTSCommon.Language lan;
- Hashtable table;
- public delegate void MyInvoke();
- public void DoWork()
- {
- MyInvoke mi = new MyInvoke(ShowXmlInfo);
- this.BeginInvoke(mi);
- }
- public SpecialParticleForm(string xmlPath)
- {
- InitializeComponent();
- this.xmlPath = xmlPath;
- ShowXmlInfo();
- //国际化
- lan = new OTSCommon.Language(this);
- table = lan.GetNameTable(this.Name);
- }
- private void ShowXmlInfo()
- {
- DataSet dataSet = XMLoperate.GetXMLRegList(xmlPath, "Member");
- dataGridView_xml.DataSource = dataSet.Tables[0];
- }
- private void dataGridView_xml_CellValueChanged(object sender, DataGridViewCellEventArgs e)
- {
- if (e.RowIndex == -1 || e.ColumnIndex == -1)
- {
- return;
- }
- if (e.RowIndex == dataGridView_xml.Rows.Count - 1)
- {
- return;
- }
- switch (e.ColumnIndex)
- {
- case 0://名称
- {
- for (int i = 0; i < dataGridView_xml.Rows.Count - 1; i++)
- {
- if (i != e.RowIndex)
- {
- if (dataGridView_xml.Rows[i].Cells[e.ColumnIndex].Value.ToString() == dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString())
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value += "_1";
- break;
- }
- }
- }
- if (dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString() == "")
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value += "unknow";
- }
- break;
- }
- case 1://开始灰度
- {
- int result = 0;
- int.TryParse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), out result);
- if (result == 0)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- else
- {
- if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) > int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[2].Value.ToString()))
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = dataGridView_xml.Rows[e.RowIndex].Cells[2].Value.ToString();
- }
- else if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < 0 || int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) > 255)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- }
- break;
- }
- case 2://结束灰度
- {
- int result = 0;
- int.TryParse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), out result);
- if (result == 0)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- else
- {
- if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[1].Value.ToString()))
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = dataGridView_xml.Rows[e.RowIndex].Cells[1].Value.ToString();
- }
- else if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < 0 || int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) > 255)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- }
- break;
- }
- case 3: //开始直径
- {
- int result = 0;
- int.TryParse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), out result);
- if (result == 0)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- else
- {
- if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) > int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[4].Value.ToString()))
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = dataGridView_xml.Rows[e.RowIndex].Cells[4].Value.ToString();
- }
- else if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < 0 || int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) > 255)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- }
- break;
- }
- case 4: //结束直径
- {
- int result = 0;
- int.TryParse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), out result);
- if (result == 0)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- else
- {
- if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[3].Value.ToString()))
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = dataGridView_xml.Rows[e.RowIndex].Cells[3].Value.ToString();
- }
- else if (int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) < 0 || int.Parse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()) > 255)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "0";
- }
- }
- break;
- }
- case 5: //是否采集Xray
- {
- bool result = false;
- bool.TryParse(dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), out result);
- if (result == false)
- {
- dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "false";
- }
- break;
- }
- default:
- break;
- }
- if (dataGridView_xml.Rows[e.RowIndex].Cells[0].Value.ToString() != "")
- {
- XMLoperate.UpdateXMLRegList(xmlPath, "Member", e.RowIndex.ToString(), dataGridView_xml.Columns[e.ColumnIndex].Name, dataGridView_xml.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString());
- }
- }
- private void dataGridView_xml_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs e)
- {
- e.Row.Cells["RegName"].Value = str_RegName;
- e.Row.Cells["start"].Value = str_start;
- e.Row.Cells["end"].Value = str_end;
- e.Row.Cells["diameterStart"].Value = str_diameterStart;
- e.Row.Cells["diameterEnd"].Value = str_diameterEnd;
- e.Row.Cells["collectXray"].Value = str_collectXray;
- XMLoperate.AddXMLRegList(xmlPath, str_RegName, str_start, str_end, str_diameterStart, str_diameterEnd, str_collectXray);
- Thread thread = new Thread(DoWork);
- thread.Start();
- }
- private void dataGridView_xml_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
- {
- XMLoperate.DeleteXMLRegList(xmlPath, "Member", e.Row.Index);
- Thread thread = new Thread(DoWork);
- thread.Start();
- }
- }
- }
|