private void tsBtnAdd_Click(object sender, EventArgs e) { PelengEntities pe = new PelengEntities(); var currentAssembly = (from m in pe.Сборки where m.НомерСборки == number select m); if (currentAssembly.Count() == 0) { if (MessageBox.Show("Текущая спецификация не внесена в базу.\nСохранить данную спецификацию?", "Внимание!", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.No) { return; } else { if (btnSave.Enabled) { btnSave_Click(sender, e); } else { MessageBox.Show("Необходимо правильно заполнить все поля", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); tabSpecification.SelectedTab = tabMain; return; } } } addAssembly add = new addAssembly(number); if (add.ShowDialog(this) == DialogResult.OK) { bool exist = false; foreach (DataGridViewRow dr in dataGridView1.Rows) { if (dr.Cells[0].Value.ToString() == add.AddAssembly.НомерВхСборки) { exist = true; break; } } if (!exist) { pelengDataSet.ВходящиеСборки.Rows.Add(add.AddAssembly.НомерВхСборки, add.AddAssembly.Количество, number); } } }
private void tsBtnEdit_Click(object sender, EventArgs e) { if (dataGridView1.SelectedCells.Count != 0) { int index = dataGridView1.SelectedCells[0].RowIndex; string current = dataGridView1.Rows[index].Cells[0].Value.ToString(); int k = (int)dataGridView1.Rows[index].Cells[1].Value; addAssembly add = new addAssembly(number, current, k); PelengEntities pe = new PelengEntities(); if (add.ShowDialog(this) == DialogResult.OK) { if (add.AddAssembly.НомерВхСборки == current && add.AddAssembly.Количество == k) { return; } if (add.AddAssembly.НомерВхСборки == current) { dataGridView1.Rows[index].Cells[1].Value = add.AddAssembly.Количество; } else { bool exist = false; int newIndex = 0; foreach (DataGridViewRow dr in dataGridView1.Rows) { if (dr.Cells[0].Value.ToString() == add.AddAssembly.НомерВхСборки) { exist = true; newIndex = dr.Index; } } if (!exist) { dataGridView1.Rows.RemoveAt(index); pelengDataSet.ВходящиеСборки.Rows.Add(add.AddAssembly.НомерВхСборки, add.AddAssembly.Количество, number); } else { dataGridView1.Rows[newIndex].Cells[1].Value = add.AddAssembly.Количество; dataGridView1.Rows.RemoveAt(index); } } } } }