public void ConInit(WDataToolClass mWDataToolClass, string GroupName = "") { this.mWDataToolClass = mWDataToolClass; int rtn = 0; DataTable dt; rtn = mWDataToolClass.SelectShowAxis(out dt, GroupName); if (rtn != 0) { MessageBox.Show("SelectShowModel"); } lvAxisView.Columns.Add("轴名称", 120, HorizontalAlignment.Left); lvAxisView.Columns.Add("负限位", 60, HorizontalAlignment.Center); lvAxisView.Columns.Add("正限位", 60, HorizontalAlignment.Center); lvAxisView.Columns.Add("报警", 60, HorizontalAlignment.Center); lvAxisView.Columns.Add("复位", 60, HorizontalAlignment.Center); lvAxisView.Columns.Add("使能", 60, HorizontalAlignment.Center); lvAxisView.Columns.Add("实际位置", 60, HorizontalAlignment.Center); lvAxisView.Columns.Add("规划位置", 60, HorizontalAlignment.Center); string mGroupName = ""; ListViewGroup mHeader = new ListViewGroup(); ListViewItem mLvi; foreach (DataRow row in dt.Rows) { //创建列表组名并添加 if (mGroupName != row[0].ToString()) { mGroupName = row[0].ToString(); mHeader = new ListViewGroup(); mHeader.Header = mGroupName; mHeader.HeaderAlignment = HorizontalAlignment.Left; lvAxisView.Groups.Add(mHeader); lvAxisView.ShowGroups = true; } //添加数据 mLvi = new ListViewItem(); mLvi.UseItemStyleForSubItems = false;//设置可以改变单元格背景颜色 mLvi.Text = row[1].ToString(); mLvi.SubItems.Add("").BackColor = Color.Gray; mLvi.SubItems.Add("").BackColor = Color.Gray; mLvi.SubItems.Add("").BackColor = Color.Red; mLvi.SubItems.Add("").BackColor = Color.Gray; mLvi.SubItems.Add("").BackColor = Color.Gray; mLvi.SubItems.Add("0"); mLvi.SubItems.Add("0"); //添加到列表 mHeader.Items.Add(mLvi); lvAxisView.Items.Add(mLvi); } tSignalRefresh.Enabled = true; }
public void ConInit(WDataToolClass mWDataToolClass) { this.mWDataToolClass = mWDataToolClass; int rtn = 0; rtn = mWDataToolClass.SelectShowAxis(ref dgvAxis); if (rtn != 0) { MessageBox.Show("SelectShowAxis"); } rtn = mWDataToolClass.SelectShowDI(ref dgvDI); if (rtn != 0) { MessageBox.Show("SelectShowAxis"); } rtn = mWDataToolClass.SelectShowDO(ref dgvDO); if (rtn != 0) { MessageBox.Show("SelectShowAxis"); } }
private void btnAxisAddOk_Click(object sender, EventArgs e) { String GroupName = ""; String Name = ""; Int32 CardNum = 0; Int32 AxisNum = 0; Int32 Pulse = 0; Int32 Acc = 0; Int32 Speed = 0; Int32 ResetNum = 0; try { if (dgvAxisAdd.Rows.Count > 0) { //检查数据 for (int i = 0; i < dgvAxisAdd.Rows.Count - 1; i++) { //检查数据是否为空 if (dgvAxisAdd.Rows[i].Cells[0].Value == null) { MessageBox.Show("第" + (i + 1).ToString() + "行的组名称为空,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[1].Value == null) { MessageBox.Show("第" + (i + 1).ToString() + "行的轴名称为空,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[2].Value == null) { MessageBox.Show("第" + (i + 1).ToString() + "行的卡号未选择,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[3].Value == null) { MessageBox.Show("第" + (i + 1).ToString() + "行的轴号未选择,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[4].Value != null && !int.TryParse(dgvAxisAdd.Rows[i].Cells[4].Value.ToString(), out Speed)) { MessageBox.Show("第" + (i + 1).ToString() + "行的脉冲当量不是整数,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[5].Value != null && !int.TryParse(dgvAxisAdd.Rows[i].Cells[5].Value.ToString(), out Acc)) { MessageBox.Show("第" + (i + 1).ToString() + "行的加速度不是整数,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[6].Value != null && !int.TryParse(dgvAxisAdd.Rows[i].Cells[6].Value.ToString(), out Speed)) { MessageBox.Show("第" + (i + 1).ToString() + "行的速度不是整数,请检查"); return; } if (dgvAxisAdd.Rows[i].Cells[7].Value == null) { MessageBox.Show("第" + (i + 1).ToString() + "行的复位顺序未选择,请检查"); return; } //检查是否已经存在重复数据 Name = dgvAxisAdd.Rows[i].Cells[1].Value.ToString(); CardNum = int.Parse(dgvAxisAdd.Rows[i].Cells[2].Value.ToString()); AxisNum = int.Parse(dgvAxisAdd.Rows[i].Cells[3].Value.ToString()); if (mWDataToolClass.SelectShowAxisCheck(" Name='" + Name + "'") == 1) { MessageBox.Show("第" + (i + 1).ToString() + "行的轴名称:" + Name + ";已存在,请检查"); return; } if (mWDataToolClass.SelectShowAxisCheck(" CardNum=" + CardNum + " And AxisNum=" + AxisNum) == 1) { MessageBox.Show("第" + (i + 1).ToString() + "行的卡号和轴号已存在,请检查"); return; } //增加的数据判断 int numRepeatName = 0; int numRepeatCA = 0; for (int j = 0; j < dgvAxisAdd.Rows.Count - 1; j++) { if (i != j) { if (Name == dgvAxisAdd.Rows[j].Cells[1].Value.ToString()) { numRepeatName++; } if (CardNum == int.Parse(dgvAxisAdd.Rows[j].Cells[2].Value.ToString()) && AxisNum == int.Parse(dgvAxisAdd.Rows[j].Cells[3].Value.ToString())) { numRepeatCA++; } } } if (numRepeatName > 0) { MessageBox.Show("第" + (i + 1).ToString() + "行的轴名称有重复,请检查"); return; } if (numRepeatCA > 0) { MessageBox.Show("第" + (i + 1).ToString() + "行的卡号和轴号有重复,请检查"); return; } } //把所有数据插入 for (int i = 0; i < dgvAxisAdd.Rows.Count - 1; i++) { GroupName = dgvAxisAdd.Rows[i].Cells[0].Value.ToString(); Name = dgvAxisAdd.Rows[i].Cells[1].Value.ToString(); CardNum = int.Parse(dgvAxisAdd.Rows[i].Cells[2].Value.ToString()); AxisNum = int.Parse(dgvAxisAdd.Rows[i].Cells[3].Value.ToString()); if (dgvAxisAdd.Rows[i].Cells[4].Value == null) { Pulse = 100; } else { Pulse = int.Parse(dgvAxisAdd.Rows[i].Cells[4].Value.ToString()); } if (dgvAxisAdd.Rows[i].Cells[5].Value == null) { Acc = 100; } else { Acc = int.Parse(dgvAxisAdd.Rows[i].Cells[5].Value.ToString()); } if (dgvAxisAdd.Rows[i].Cells[6].Value == null) { Speed = 10; } else { Speed = int.Parse(dgvAxisAdd.Rows[i].Cells[6].Value.ToString()); } ResetNum = int.Parse(dgvAxisAdd.Rows[i].Cells[7].Value.ToString()); if (mWDataToolClass.InsertAxis(GroupName, Name, CardNum, AxisNum, Pulse, Acc, Speed, ResetNum) != 0) { MessageBox.Show("第" + (i + 1).ToString() + "行的数据添加失败"); return; } } closePanelUI(); //刷新轴数据 mWDataToolClass.SelectShowAxis(ref dgvAxis); dgvAxisAdd.Rows.Clear(); MessageBox.Show("轴数据添加成功"); } else { MessageBox.Show("添加的数据为空"); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }