private void btnStoreNP_Click(object sender, EventArgs e) { try { int newNumber = int.Parse(tbxNumber.Text); string newName = tbxName.Text; try { if (this.EditState == EditStateType.Edit) { if (bindingSource.Current != null) { DatabaseSet.品質原因Row row = (bindingSource.Current as DataRowView).Row as DatabaseSet.品質原因Row; row.FillRow(newNumber, newName); 品質原因TableAdapter.Instance.Update(row);; } } else if (this.EditState == EditStateType.New) { DatabaseSet.品質原因Row newRow = DatabaseSet.品質原因Table.New品質原因Row(); newRow.FillRow(newNumber, newName); DatabaseSet.品質原因Table.Rows.Add(newRow); 品質原因TableAdapter.Instance.Update(newRow); } this.EditState = EditStateType.None; } catch (ConstraintException) { MessageBox.Show("已存在品質原因 " + newNumber + " (" + newName + "),請指定其他編號"); } } catch (Exception ex) { Global.ShowError(ex); } finally { if (this.EditState == EditStateType.Edit) { tbxNumber.DataBindings[0].ReadValue(); tbxName.DataBindings[0].ReadValue(); } } }
private void btnDelNP_Click(object sender, EventArgs e) { try { if (bindingSource.Current != null) { DatabaseSet.品質原因Row row = (bindingSource.Current as DataRowView).Row as DatabaseSet.品質原因Row; int newNumber = row.編號; string newName = row.稱; if (MessageBox.Show("確定刪除 " + newNumber + " (" + newName + ") 及其所有相關資料?", "刪除提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK) { row.Delete(); 品質原因TableAdapter.Instance.Update(row); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }